
A 回答 (4件)
- 最新から表示
- 回答順に表示
No.4
- 回答日時:
#2、cjです。
追加レスです。> 開いている複数のエクセルブック(.csv)
が、確実に開いているなら、名前を指定してアクティブにするのでも
構わないと思いますけれど、漏れがあってもエラーを出さない
という意味では、#2は比較的易しい設計を意図したつもりでした。
開いているワークブックだけを相手にしていますから。
ところで、
元質問でご提示のコードについてですが、
(意図を汲み兼ねている面もありまして)
変数 i の増加によって処理に変化を付けているのでしたら、
既出のもの、そのままでは対応出来ません。
> ファイル名は、1 A、1 B、2 A、2 B・・・
> Do While i < 9
このふたつを合わせて読むと
ファイル名は、1 A、1 B、2 A、2 B・・・8 A、8 B
ということになると思いますが、
これらのファイル名を、1 から 8 まで、ふたつのファイルを一組として
順にアクティブにしていく記述を示しておきます。
Sub Re8205665a()
Dim i As Long
For i = 1 To 8
Workbooks(i & " A.csv").Activate
' ←' 1 A、2 A、3 A、4 A、5 A、6 A、7 A、8 A に対する処理を記述
Workbooks(i & " B.csv").Activate
' ←' 1 B、2 B、3 B、4 B、5 B、6 B、7 B、8 B に対する処理を記述
Next i
End Sub
以上はファイル名で指定したワークブックが開いていないとエラーになります。
以下は
"複数のエクセルブック(.csv)" |(開いてるかわからないブック)
を
開きながらアクティブにし |(開いているならアクティブにするだけ)
順に処理していきます。
この場合、開いていなくてもエラーになりませんが、
存在しないブックを開こうとした場合は当然エラーになります。
Sub Re8205665aa()
Dim i As Long
For i = 1 To 8
Workbooks.Open i & " A.csv"
' ←' 1 A、2 A、3 A、4 A、5 A、6 A、7 A、8 A に対する処理を記述
Workbooks.Open i & " B.csv"
' ←' 1 B、2 B、3 B、4 B、5 B、6 B、7 B、8 B に対する処理を記述
Next i
End Sub
以上、i は、1 から 8 まで 1 ステップずつ増加します。
いずれの例も、
i & " A.csv"
i & " B.csv"
のように、
数字(数値)を表す変数 i と
文字列値 " A.csv"、 " B.csv"
を
&演算子で文字列として連結しているだけです。
文字列の部分だけ、ダブルクオート""で括って&で繋ぐ。
その基本だけ解れば応用は簡単です。
No.3
- 回答日時:
>ファイル名は、1 A、1 B、2 A、2 B・・・と言った感じです。
なら、こんな方法も
For Each fn In Array("1 A", "1 B", "2 A", "2 B")
Windows(fn & ".scv").Activate
・・・
Next
No.2
- 回答日時:
こんにちは。
開いているワークブックすべて
のうち、
名前が、".csv"で終っているものを
順に処理していきます。
Sub Re8205665()
Dim wbk As Workbook
For Each wbk In Workbooks
If wbk.Name Like "*.csv" Then
' ' やりたい処理を書くところ
' ' 以下3行は仮の処理
Debug.Print wbk.Name, ;
Debug.Print wbk.Sheets(1).Name, ;
Debug.Print wbk.Worksheets(1).Range("A1").Value
End If
Next
End Sub
上記、wbk.Worksheets(1).Range("A1")、のように
ワークブック、ワークシート、セル範囲と、
正しく子オブジェクトを参照するようにしてください。
そういう書き方をまだ知らないのでしたら、
必ず、標準モジュールに記載するようにして。
wbk.Activate
Range("A1").Value = 1
のように、一旦、ワークブックをアクティブにしてから、であれば、
(親オブジェクトを指定しない)省略形でセル範囲を指定できます。
また、ファイル名を、
"半角数字一文字"と"半角スペース一文字"と"半角AからBまでの一文字"
が連なった3文字に続いて".csv"という名前で特定出来るならば、
(例示が正しいならば)
If wbk.Name Like "*.csv" Then
に代えて
If wbk.Name Like "# [A-B].csv" Then
とすれば、仮に、その他のCsvファイルが開いていても
名前によって条件分岐できます。
或いは例示に沿って、
"1から8までの半角数字一文字"と"半角スペース一文字"と"半角AからBまでの一文字"
が連なった3文字に続いて".csv"という名前で特定出来るならば、
If wbk.Name Like "[1-8] [A-B].csv" Then
という風に条件を書き換えます。
もしも間違った例示をしていた場合は、よく確認してから
きちんと補足してみてください。
以上です。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) 複数のcsvファイルをExcelに一括変換したい 2 2023/03/03 12:44
- Excel(エクセル) 【マクロ】マクロが保存されているエクセルとは、別のエクセルのオートフィルターのしぼりをクリアーしたい 2 2022/12/24 08:36
- Excel(エクセル) 【マクロ】マクロが保存されているエクセルとは、別のエクセルブックの全シートの非表示列を再表示したい 1 2022/12/24 20:48
- Excel(エクセル) 【マクロ】webアドレスにて指定されたCSVファイル【excelソフト表示】を印刷する件 1 2023/02/15 01:52
- Visual Basic(VBA) エクセルVBAについて 8 2022/07/13 22:41
- Visual Basic(VBA) マクロVBA 1シートをまとめる 閉じ方 初心者 SOS! 1 2022/06/17 14:54
- Visual Basic(VBA) エクセルのマクロについて教えてください。 2 2023/07/06 17:46
- Excel(エクセル) エクセルのVBAについて とあるサイトのコードを参考に、CSVの文字化けを直すVBAを作成しているの 7 2022/11/04 14:15
- Visual Basic(VBA) VBAのユーザーフォームのテキストボックスに入力制限をしたい 6 2022/11/15 08:28
- Visual Basic(VBA) サブフォルダ(データ)にある複数の.xlsxファイルのSheet3のA2セルの値で01から左側をB2 2 2022/08/14 15:46
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Vba Array関数について教えてく...
-
【マクロ】シートの変数へ入れ...
-
【マクロ】並び替えの範囲が、...
-
エクセルのVBAコードと数式につ...
-
エクセルのマクロについて教え...
-
エクセルの改行について
-
【VBA】 結合セルに複数画像と...
-
vbsでのwebフォームへの入力制限?
-
算術演算子「¥」の意味について
-
【マクロ】売上一覧YYYYMMDDHHS...
-
【マクロ】開いているブックの...
-
Vba セルの4辺について罫線が有...
-
vb.net(vs2022)のtextboxのデザ...
-
ダブルクリックで貼り付けた画...
-
VBAの「To」という語句について
-
VBAでユーザーフォームを指定回...
-
VBAでCOPYを繰り返すと、処理が...
-
【マクロ】変数を使った、文字...
-
エクセルのVBAコードについて教...
-
ワードの図形にマクロを登録で...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Vba セルの4辺について罫線が有...
-
vbsでのwebフォームへの入力制限?
-
【ExcelVBA】5万行以上のデー...
-
【マクロ】売上一覧YYYYMMDDHHS...
-
【マクロ】開いているブックの...
-
【マクロ】並び替えの範囲が、...
-
エクセルの改行について
-
エクセルのマクロについて教え...
-
vb.net(vs2022)のtextboxのデザ...
-
VBAでCOPYを繰り返すと、処理が...
-
VBA ユーザーフォーム ボタンク...
-
エクセルのVBAコードと数式につ...
-
エクセルのVBAコードについて教...
-
[VB.net] ボタン(Flat)のEnable...
-
【マクロ】変数を使った、文字...
-
改行文字「vbCrLf」とは
-
質問58753 このコードでうまく...
-
【マクロ】シートの変数へ入れ...
-
ワードの図形にマクロを登録で...
-
算術演算子「¥」の意味について
おすすめ情報