
A 回答 (2件)
- 最新から表示
- 回答順に表示
No.2
- 回答日時:
出来れば、新規追加の質問は新たに投稿し直してください。
時間経過により回答が締め切られているため、
この文面はサポートにより追加して頂いております。
>更に欲を出したと言うのは、『同じモジュール内に、同じく
>「ブックBの"仕入*"の特定セルからの値取得後、
>Sheet1のB1にcnt値を書き出す」というコードについてです。
追加で書出す「値」とは、売上*と同様に特定セル(合計値)を
合計した値という意味と捉えて回答致します。
「売上*」シートのA10セルを集計してcnt(0)へ合計し、
「仕入*」シートのB10セルを集計してcnt(1)へ合計します。
Sheet1のセルA1,B1に合計値「cnt(0)及びcnt(1)」を書き出します。
以下のコードで差替えて、ご利用ください。
■VBAコード
Sub 別ブックの合計()
'型宣言
Dim fpath As String
Dim tbook As Workbook
Dim i As Integer
Dim cnt(1) As Double
'ファイルを指定
fpath = Application.GetOpenFilename("全てのファイル(*.*),*.*")
'指定したファイルを開く
Set tbook = Workbooks.Open(fpath)
'シートの数だけ繰り返し
For i = 1 To tbook.Sheets.Count
'条件に一致したシート名を対象に処理
If tbook.Sheets(i).Name Like "売上*" Then
'対象のシートのセルA10より値を取得し、変数cnt(0)に加算
cnt(0) = cnt(0) + tbook.Sheets(i).Range("A10").Value
End If
If tbook.Sheets(i).Name Like "仕入*" Then
'対象のシートのセルB10より値を取得し、変数cnt(1)に加算
cnt(1) = cnt(1) + tbook.Sheets(i).Range("B10").Value
End If
Next i
'ブックを閉じる
tbook.Close
'Sheet1のセルA1,B1に合計値を書き出し
ThisWorkbook.Sheets("Sheet1").Range("A1").Value = cnt(0)
ThisWorkbook.Sheets("Sheet1").Range("B1").Value = cnt(1)
End Sub
No.1
- 回答日時:
VBAで別ブックの条件に一致するシートのセル「A10」の値を取得・合計し
VBAコードを記述しているブックの「Sheet1」セル「A1」に結果を表示するコードです。
(1)新規ブックを作成し、以下のコードを標準モジュールに貼り付け
(2)「別ブックの合計」を実行
(3)ファイルを開くダイアログが表示されるので、対象のブックを開く
■VBAコード
Sub 別ブックの合計()
'型宣言
Dim fpath As String
Dim tbook As Workbook
Dim i As Integer
Dim cnt As Double
'ファイルを指定
fpath = Application.GetOpenFilename("全てのファイル(*.*),*.*")
'指定したファイルを開く
Set tbook = Workbooks.Open(fpath)
'シートの数だけ繰り返し
For i = 1 To tbook.Sheets.Count
'条件に一致したシート名を対象に処理
If tbook.Sheets(i).Name Like "売上*" Then
'対象のシートのセルA10より値を取得し、変数cntに加算
cnt = cnt + tbook.Sheets(i).Range("A10").Value
End If
Next i
'ブックを閉じる
tbook.Close
'Sheet1のセルA1に合計値を書き出し
ThisWorkbook.Sheets("Sheet1").Range("A1").Value = cnt
End Sub

お返事が大変遅くなって申し訳ありません。
教えて頂いたコードをコピペすると、確かにやりたかったことができました!!ありがとうございます。
それで更に欲を出して色々試行錯誤を続けていましたが、どうも行き詰まりになってしまい、図々しいのですがもしよろしければ再度教えて頂けたら幸いだなぁと思っております。。。
教えて頂いたのは「ブックBの"売上*"の特定セルからの値取得後、Sheet1のA1にcnt値を書き出し」でした。
更に欲を出したと言うのは、『同じモジュール内に、同じく「ブックBの"仕入*"の特定セルからの値取得後、Sheet1のB1にcnt値を書き出す」というコードについてです。
最小限のポチッで、Sheet1のA1とB1にcnt値がバーンと入る方法を考えています。
もしももしもよろしければ、、、教えて頂けるとありがたいです。m(__)m
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
【マクロ】AブックからBブック...
-
VBAで別のブックにシートをコピ...
-
VBA シートをコピーする際に Co...
-
【ExcelVBA】インデックスが有...
-
Excel UserForm の表示位置
-
エクセルでシートを保護すると...
-
罫線の斜線を自動で引くマクロ
-
あああ..ああい..ああう とい...
-
「段」と「行」の違いがよくわ...
-
Excel VBAでのWorksheet_Change...
-
EXCELのダイアログシートって、...
-
DataGridViewでグリッド内に線...
-
Excelのフィルター後の一番上の...
-
vba マージエリアの行数を非表...
-
【エクセル】フリーワード検索...
-
マクロの相対セル参照記録って?
-
エクセルファイルを開いた回数...
-
ListViewで列を指定して表示さ...
-
アクティブになっている行をマ...
-
【マクロ】実行時エラー '424':...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
VBA シートをコピーする際に Co...
-
エクセルVBAが途中で止まります
-
VBA 別ブックからコピペしたい...
-
別ブックをダイアログボックス...
-
VBAで別のブックにシートをコピ...
-
ワイルドカード「*」を使うとう...
-
VBA コードを実行すると画面が...
-
VBA 実行時エラー 2147024893
-
[Excel]ADODBでNull変換されて...
-
VBAで別ブックのシートを指定し...
-
【ExcelVBA】インデックスが有...
-
【ExcelVBA】zip圧縮されたCSV...
-
Excelマクロ 該当する値の行番...
-
【Excel VBA】書き込み先ブック...
-
【VBA】全シートの計算式を全て...
-
Excelファイルを開くとき、読み...
-
Excel2007VBAファイルの表示に...
-
VBAで複数のブックを開かずに処...
-
フォルダ内の全てのファイルに...
-
オブジェクトは、このプロパテ...
おすすめ情報