HohoPapa の回答履歴
- エクセルVBAのCells
Cells(5.5).Value = "○" と入力すると セルE5ではなくF1(1行目の5列目)に○が入るのですが、なぜでしょうか。 Range("F5") = "○" でできるのは知っています。
- ベストアンサー
- Visual Basic
- noname#255842
- 回答数5
- VBAを使用した表の転記
VBA超初心者です。表を新たな別ブックのシートに転記した上、「商品名~住所」単位で行の下に一行追加した上で「商品名2~住所2」単位でセルを上のセルより切り取って貼り付け、セルにデータのないときは飛ばしてデータのあるセルに同じ処理をしたいと考えております。 よい方法があれば教えていただけますか。
- 締切済み
- Excel(エクセル)
- NordOst
- 回答数6
- エクセルで条件に基づきエラーメッセージを表示させた
下記のように設定しています ・A2、B2、C2、D2の各セル内にチェックボックスを配置 ・A2のリンクセルはAE2に、B2はAF2に、C2はAG2に、D2はAH2に配置 ・AY2に「=COUNTIF(AE2:AH2,TRUE)」を配置して、B2、C2 、D2の中で選択した数を表示 B2、C2 、D2の全てに該当しない場合にはA1をチェックするのですが、 A1を選んだ場合で、間違ってB2、C2 、D2の中でどれか1つ以上にもチェックしてしまった場合に注意喚起するメッセージを表示させたいのです データの入力規則の「無効なデータが入力されたらエラーメッセージを表示する」を使って A2を選択したあとに、かつB2 and/or C2 and/or D2を選択したとして 例えば「重複してませんか?」のように表示させようとしたのですが、どうもうまくできませんでした どなたかよい解決法をご存知でしたら、どうぞ教えて下さい 可能であればマクロは使わない方法がありがたいです (わかりやすくするためセルの表記を簡素化しています、実際には横に20行近い質問項目のセルを用意し、 縦に300近く個別のIDを設定していますので、マクロの微修正が出来るほどの技術は持ち合わせて無いからなのです) 使用環境はWindows10、excel2019相当の自宅とWindows7、excel2010相当の職場でデータをやりとりしています どうぞよろしくおねがいいたします
- ベストアンサー
- Excel(エクセル)
- Zyagarinko
- 回答数12
- エクセルで条件に基づきエラーメッセージを表示させた
下記のように設定しています ・A2、B2、C2、D2の各セル内にチェックボックスを配置 ・A2のリンクセルはAE2に、B2はAF2に、C2はAG2に、D2はAH2に配置 ・AY2に「=COUNTIF(AE2:AH2,TRUE)」を配置して、B2、C2 、D2の中で選択した数を表示 B2、C2 、D2の全てに該当しない場合にはA1をチェックするのですが、 A1を選んだ場合で、間違ってB2、C2 、D2の中でどれか1つ以上にもチェックしてしまった場合に注意喚起するメッセージを表示させたいのです データの入力規則の「無効なデータが入力されたらエラーメッセージを表示する」を使って A2を選択したあとに、かつB2 and/or C2 and/or D2を選択したとして 例えば「重複してませんか?」のように表示させようとしたのですが、どうもうまくできませんでした どなたかよい解決法をご存知でしたら、どうぞ教えて下さい 可能であればマクロは使わない方法がありがたいです (わかりやすくするためセルの表記を簡素化しています、実際には横に20行近い質問項目のセルを用意し、 縦に300近く個別のIDを設定していますので、マクロの微修正が出来るほどの技術は持ち合わせて無いからなのです) 使用環境はWindows10、excel2019相当の自宅とWindows7、excel2010相当の職場でデータをやりとりしています どうぞよろしくおねがいいたします
- ベストアンサー
- Excel(エクセル)
- Zyagarinko
- 回答数12
- 決算書 来年の会費は何の科目?
スポーツ団体です。 2021年度12月までの決算書を作成しているのですが、ある会員が誤って2022年度の会費を1月に振り込むべきなのを2021年12月に振り込んでしまいました。その場合、決算書の科目(収入)はどう記載したら良いでしょうか?
- EXCEL VBAで列に任意の数字があるかを確認
EXCELのVBAを使用して、次を行いたいと思いますが、うまくいきません。 ①任意の列(下のB列)に任意の数字があるかを確認する ②ある場合、該当行を除き、ない場合は、そのまま。 例)A列 B列 りんご 100 みかん 150 りんご 120 上記のデータを任意の数字を「100」とした場合、 結果)A列 B列 みかん 150 りんご 120 にしたいと思います。 また、任意の数字を「200」とした場合、 結果)A列 B列 りんご 100 みかん 150 りんご 120 となります。 私なりに調べた結果、「InStr」と「AutoFilter」、「If ~ then ~ else」の組み合わせでできないかと思いましたが、うまくいきません。お手数をおかけしますが、ご教示のほどよろしくお願い申し上げます。
- 締切済み
- Excel(エクセル)
- help_me2891
- 回答数4
- VBAで空白がない所でコード走るとエラーが出る
VBAで空白がない所にコードが走るとエラーが出てしまう VBAで空白を左詰めで埋まるようにコードを作りました コードの画像で示したようにハイライトされた所でエラー発生 表の画像はコメントの通りです よろしくお願いします
- ベストアンサー
- Excel(エクセル)
- Kaze2020
- 回答数2
- Excel VBA の構文を教えてください(2)
仕様の説明が上手くできてないので、再度、新規に投稿します。 Excel VBAにて(添付映像) ① I列に区分け条件があります ② 区分けされた「行」にそれぞれの数値があります ③ 行毎の集計を CP列からEC列の2行/5行/6行に合計したい ④ JA ~JD に条件別に合計をしてみました ⑤ ④の値をCP2/CP5/CP6に記載 ⑥ ①②③までを、ダイレクト集計可能なら④以降はいらない I列の条件区分をJA2に集計するところまでは、何とかたどりつきました。 Dim i As Long For i = 1 To 4 Range("IZ2").Offset(, i) = WorksheetFunction.SumIf(Range("I:I"), Choose(i, "決", "D", "E*○", "E*△"), Range("CP:CP")) Next i 上記のRange(”IZ2”)と Range("CP:CP")を1文ずつ作成すれば 出来そうですが、もう少しシンプルな内容の構成にしたい For~Next の二重ループで可能でしょうか? ヒントがあれば、ご教授願います。
- ベストアンサー
- Visual Basic
- Mhisao
- 回答数5
- csvデータの番号付加について。
例題の csvデータの内容が 配列1 aaaaa aaaaa aaaaa bbbbb bbbbb bbbbb bbbbb bbbbb bbbbb ccccc ccccc だった場合、配列が1つ増え ↓ 配列1 配列2 aaaaa 00001-1 aaaaa 00001-2 aaaaa 00001-3 bbbbb 00002-1 bbbbb 00002-2 bbbbb 00002-3 bbbbb 00002-4 bbbbb 00002-5 ccccc 00003-1 ccccc 00003-2 管理番号が増えていきます。 Sub main() Dim branch As Long Dim count As Long Dim i As Long Dim tmp As Long tmp = FreeFile Dim data As Variant With CreateObject("Scripting.FileSystemObject").GetFile("C:\データ.csv").OpenAsTextStream data = Split(.readall, vbCrLf) End With branch = 1 count = 1 Open "C:\出力データ.csv" For Output As #tmp Print #tmp, data(i) & vbTab & Format(branch, "00000") & vbTab & count For i = LBound(data) + 1 To UBound(data) If data(i) = data(i - 1) Then count = count + 1 Else branch = branch + 1 count = 1 End If Print #tmp, data(i) & vbTab & Format(branch, "00000") & vbTab & count Next i Close #tmp End Sub 例えば、タブ区切りの配列が元データで5つあり 配列5番目だけを指定し、例題のようにcsvを作成したいのですが 配列の宣言はまだしておりません。 アドバイスいただけないでしょうか。 よろしくお願いいたします。 元データ 配列1 配列2 配列3 配列4 配列5 a 1 c a aaaaa a 2 c b aaaaa a 3 c c aaaaa a 4 c d bbbbb a 5 c e bbbbb a 6 c f bbbbb a 7 c g bbbbb a 8 c h bbbbb a 9 c i ccccc a 0 c j ccccc 出力データ 配列1 配列2 配列3 配列4 配列5 配列6 a 1 c a aaaaa 00001-1 a 2 c b aaaaa 00001-2 a 3 c c aaaaa 00001-3 a 4 c d bbbbb 00002-1 a 5 c e bbbbb 00002-2 a 6 c f bbbbb 00002-3 a 7 c g bbbbb 00002-4 a 8 c h bbbbb 00002-5 a 9 c i ccccc 00003-1 a 0 c j ccccc 00003-2
- ベストアンサー
- Excel(エクセル)
- yairi1106
- 回答数3
- csvデータの番号付加について。
例題の csvデータの内容が 配列1 aaaaa aaaaa aaaaa bbbbb bbbbb bbbbb bbbbb bbbbb bbbbb ccccc ccccc だった場合、配列が1つ増え ↓ 配列1 配列2 aaaaa 00001-1 aaaaa 00001-2 aaaaa 00001-3 bbbbb 00002-1 bbbbb 00002-2 bbbbb 00002-3 bbbbb 00002-4 bbbbb 00002-5 ccccc 00003-1 ccccc 00003-2 管理番号が増えていきます。 Sub main() Dim branch As Long Dim count As Long Dim i As Long Dim tmp As Long tmp = FreeFile Dim data As Variant With CreateObject("Scripting.FileSystemObject").GetFile("C:\データ.csv").OpenAsTextStream data = Split(.readall, vbCrLf) End With branch = 1 count = 1 Open "C:\出力データ.csv" For Output As #tmp Print #tmp, data(i) & vbTab & Format(branch, "00000") & vbTab & count For i = LBound(data) + 1 To UBound(data) If data(i) = data(i - 1) Then count = count + 1 Else branch = branch + 1 count = 1 End If Print #tmp, data(i) & vbTab & Format(branch, "00000") & vbTab & count Next i Close #tmp End Sub 例えば、タブ区切りの配列が元データで5つあり 配列5番目だけを指定し、例題のようにcsvを作成したいのですが 配列の宣言はまだしておりません。 アドバイスいただけないでしょうか。 よろしくお願いいたします。 元データ 配列1 配列2 配列3 配列4 配列5 a 1 c a aaaaa a 2 c b aaaaa a 3 c c aaaaa a 4 c d bbbbb a 5 c e bbbbb a 6 c f bbbbb a 7 c g bbbbb a 8 c h bbbbb a 9 c i ccccc a 0 c j ccccc 出力データ 配列1 配列2 配列3 配列4 配列5 配列6 a 1 c a aaaaa 00001-1 a 2 c b aaaaa 00001-2 a 3 c c aaaaa 00001-3 a 4 c d bbbbb 00002-1 a 5 c e bbbbb 00002-2 a 6 c f bbbbb 00002-3 a 7 c g bbbbb 00002-4 a 8 c h bbbbb 00002-5 a 9 c i ccccc 00003-1 a 0 c j ccccc 00003-2
- ベストアンサー
- Excel(エクセル)
- yairi1106
- 回答数3
- Excel VBA の構文を教えてください(2)
仕様の説明が上手くできてないので、再度、新規に投稿します。 Excel VBAにて(添付映像) ① I列に区分け条件があります ② 区分けされた「行」にそれぞれの数値があります ③ 行毎の集計を CP列からEC列の2行/5行/6行に合計したい ④ JA ~JD に条件別に合計をしてみました ⑤ ④の値をCP2/CP5/CP6に記載 ⑥ ①②③までを、ダイレクト集計可能なら④以降はいらない I列の条件区分をJA2に集計するところまでは、何とかたどりつきました。 Dim i As Long For i = 1 To 4 Range("IZ2").Offset(, i) = WorksheetFunction.SumIf(Range("I:I"), Choose(i, "決", "D", "E*○", "E*△"), Range("CP:CP")) Next i 上記のRange(”IZ2”)と Range("CP:CP")を1文ずつ作成すれば 出来そうですが、もう少しシンプルな内容の構成にしたい For~Next の二重ループで可能でしょうか? ヒントがあれば、ご教授願います。
- ベストアンサー
- Visual Basic
- Mhisao
- 回答数5
- excel VBA 一覧表印刷 個別氏名表示
成績一覧表で40名分の番号と氏名を1名のみ表示し,それ以外を 空白にし連続40名分印刷したいです.マクロの知識が少なく, ネットで調べましたがありません。vlookup関数は使えません。 表一枚を個人番号と氏名での連続印刷となります。すいませんが, 教えて下さい。よろしくお願いいたします。
- セルの値を転記
下記のコードで sub main() Dim i As Long Dim rowToWrite As Long Dim 最終行 As Long Dim result As Variant Dim tmp As Variant Dim j As Long 最終行 = Range("B1").End(xlDown).Row result = Cells(1, 1).Resize(最終行, 2).Value For rowToWrite = 1 To 最終行 If tmp <> result(rowToWrite, 2) Then i = i + 1 j = 1 result(rowToWrite, 1) = i & "-" & j tmp = result(rowToWrite, 2) Else j = j + 1 result(rowToWrite, 1) = i & "-" & j End If Next rowToWrite Cells(1, 1).Resize(最終行, 2).Value = result End Sub Bセルの値が aaaaa aaaaa aaaaa bbbbb bbbbb bbbbb bbbbb bbbbb bbbbb ccccc ccccc だった場合 ↓ Aセル,Bセル 1-1,aaaaa 1-2,aaaaa 1-3,aaaaa 2-1,bbbbb 2-2,bbbbb 2-3,bbbbb 2-4,bbbbb 2-5,bbbbb 2-6,bbbbb 3-1,ccccc 3-2,ccccc とBセルの値が 変わったタイミングで Aセルに管理番号が増えていくのですが Cells(1, 1).Resize(lastRow, 2).Value = resultの値を 表示せずに 2次元配列として resultの値を result = 結果(debug.print 結果) としてAセルの値を 1-1 1-2 1-3 2-1 2-2 2-3 2-4 2-5 2-6 3-1 3-2 と転記したいのですがアドバイスいただけたら助かります。 よろしくお願いいたします。
- ベストアンサー
- Excel(エクセル)
- yairi1106
- 回答数2
- Excel VBA の構文を教えてください(2)
仕様の説明が上手くできてないので、再度、新規に投稿します。 Excel VBAにて(添付映像) ① I列に区分け条件があります ② 区分けされた「行」にそれぞれの数値があります ③ 行毎の集計を CP列からEC列の2行/5行/6行に合計したい ④ JA ~JD に条件別に合計をしてみました ⑤ ④の値をCP2/CP5/CP6に記載 ⑥ ①②③までを、ダイレクト集計可能なら④以降はいらない I列の条件区分をJA2に集計するところまでは、何とかたどりつきました。 Dim i As Long For i = 1 To 4 Range("IZ2").Offset(, i) = WorksheetFunction.SumIf(Range("I:I"), Choose(i, "決", "D", "E*○", "E*△"), Range("CP:CP")) Next i 上記のRange(”IZ2”)と Range("CP:CP")を1文ずつ作成すれば 出来そうですが、もう少しシンプルな内容の構成にしたい For~Next の二重ループで可能でしょうか? ヒントがあれば、ご教授願います。
- ベストアンサー
- Visual Basic
- Mhisao
- 回答数5
- Excel VBA 複数ブックのシート結合方法
複数ブックの特定のシート(都度指定)のみを結合するマクロを組みたいです。 例えば、「ファイルマージ前」というフォルダがあって、その中には数値のみ違う同フォーマットのアンケート集計結果が保存されています。 このフォルダ内には50ほどのブックが保存されていて、そのブック内の「N表」というシート(50あるブック内全てに存在するシート)を新規ブック(マクロを組み込むブック)の1シートに上から順に値コピーしていきたいです。 今後、別の機会でファイルマージが必要になった際にも使用出来る様に、シート名を都度指定(セルにシート名を入力して、そのシート名を参照する等)出来るようにしたいのですが、自分の知識とネット等で調べた情報のみではうまく作成出来ませんでした。 詳しい方のお知恵をお借りしたいです。 宜しくお願い致します。
- 締切済み
- Visual Basic
- iamwatAshi
- 回答数2
- Excel VBA の構文を教えてください。
Excelにて、I列に分類条件が、”決", "D", "E*〇", E*△", 4種類あります。 (空白行もあり)計算済み数値がCP 列以降EO列まで記載されています。 セルCP2 (決+D+E*〇+E*△) 合計 セルCP5 (決+D) 合計 セルCP2 (決+D+E*△) 合計 JA2からJA18まで一旦、保存しています。 これをCP列からEO 列まで計算したいのですが、添付のようなVBAになってしまいました。 元データの加工によっては、行列が違ってくる事もあります。 VBA でシンプルに作成可能でしょうか?また、何となくExcel 関数でも簡単な方法がありましたら、 ご教授願います。(VBA初心者です)よろしくお願いします。 Sub 集計条件に一致した数値の合計() 'CP列 Range("JA2") = WorksheetFunction.SumIf(Range("I:I"), "決", Range("CP:CP")) Range("JB2") = WorksheetFunction.SumIf(Range("I:I"), "D", Range("CP:CP")) Range("JC2") = WorksheetFunction.SumIf(Range("I:I"), "E*○", Range("CP:CP")) Range("JD2") = WorksheetFunction.SumIf(Range("I:I"), "E*△", Range("CP:CP")) Range("CP2") = WorksheetFunction.Sum(Range("JA2:JD2")) Range("CP5") = WorksheetFunction.Sum(Range("JA2:JB2")) Range("CP6") = WorksheetFunction.Sum(Range("JA2:JC2")) 'CQ も同様に I列を検索して、 CQ列にある数値を一旦保存して、 CQ2 CQ5 CQ6 に結果を表示する
- 締切済み
- Visual Basic
- Mhisao
- 回答数3
- 住所録をCSV形式ファイルの文字化け
郵便局の旧サービスはがきキットで住所録の印刷にあたり新サービスで利用するのに旧データをCSV形式に書き出せるというので作業したら番地(全角)の文字化けがあり修正して上書き保存してます。日付や番地が合ってても半角になっており修正入力しても確定ボタン押すと修正前の状態に戻ってしまします。どうしたら修正できますか? ※OKWAVEより補足:「富士通FMV」についての質問です。
- 締切済み
- Windows 10
- fuji3yu8ke39
- 回答数2
- サブネットの拡張
ご教示ください。 10.123.0.0/27 というセグメントを使っており、IPアドレスはDHCPではなく全て手動で設定しています。 ここでセグメントのIPアドレスが足りなくなったので、10.123.0.0/26に拡張することはできるのでしょうか? また、既存の端末のOSでサブネットマスクを/27すなわち255.255.255.224で設定している端末は通信ができなくなってしまうのでしょうか? 以上宜しくお願いいたします
- 締切済み
- ネットワーク
- gfdguyh137
- 回答数4
- 特定フォルダのファイルを印刷したら、同時に・・・
FAX機で受信した文書をPDF化し、あるPC(Windows10)の共有フォルダに転送される設定がされているとします。 ※NASに転送される設定の場合もあります このフォルダの中にあるファイルを必要に応じて印刷をする場合があります。 この印刷済みのファイルを自動的に例えば「印刷済み_(もともとのファイル名)」のような感じで未印刷のファイルと名前で区別させるか、あるいは「印刷済み」というような名称を付けた別のフォルダにこれも自動的に移動させるか、みたいなことは可能でしょうか? 可能でしたらどのような設定を行えばよいでしょうか?
- ベストアンサー
- その他([技術者向] コンピューター)
- Youyou
- 回答数3
- 特定フォルダのファイルを印刷したら、同時に・・・
FAX機で受信した文書をPDF化し、あるPC(Windows10)の共有フォルダに転送される設定がされているとします。 ※NASに転送される設定の場合もあります このフォルダの中にあるファイルを必要に応じて印刷をする場合があります。 この印刷済みのファイルを自動的に例えば「印刷済み_(もともとのファイル名)」のような感じで未印刷のファイルと名前で区別させるか、あるいは「印刷済み」というような名称を付けた別のフォルダにこれも自動的に移動させるか、みたいなことは可能でしょうか? 可能でしたらどのような設定を行えばよいでしょうか?
- ベストアンサー
- その他([技術者向] コンピューター)
- Youyou
- 回答数3