A 回答 (3件)
- 最新から表示
- 回答順に表示
No.3
- 回答日時:
以下のようにしてください。
詳細条件が不明なので、以下のような仕様で作成しています。
1.フォルダの中のファイルは、拡張子が.xlsmのファイルを対象にする。
2.対象となるファイルに複数のシートがある場合、最も左側のシートの
B12のセルを対象とする。
3.値の格納先は、マクロ実行時に表示されているシートとする。
(マクロのあるファイルのシートに格納します)
Public Sub B12集計()
Dim FldrPicker As FileDialog
Dim fldPath As String
Dim fname As String
Dim ws As Worksheet
Dim wrow As Long: wrow = 1
Dim wb As Workbook
Set ws = ActiveSheet
'フォルダ選択ダイアログを表示
Set FldrPicker = Application.FileDialog(msoFileDialogFolderPicker)
With FldrPicker
.Title = "フォルダを選択してください。"
.AllowMultiSelect = False
If .Show <> -1 Then Exit Sub
fldPath = .SelectedItems(1) & "\"
End With
Set ws = ActiveSheet
fname = Dir(fldPath & "*.xlsx")
Do While (fname <> "")
Set wb = Workbooks.Open(fldPath & fname)
ws.Cells(wrow, 1).Value = wb.Worksheets(1).Range("B12").Value
wb.Close (False)
wrow = wrow + 1
fname = Dir()
Loop
MsgBox ("完了")
End Sub
No.2
- 回答日時:
すみません。
生成AIの回答をそのままコピペしたものです。
あと、マクロ実行のEXCELファイルは「~.xlsx」ではなくて「~.xlsm」なので、コードの「Active.xlsx」の部分は「Active.xlsm」に読み替えます。
ただ、テスト実行してみたところ、各々のB12セルの値を、1ファイルから10行分を転記してしまっています。
変数の加算がしくじっているようです。
生成AIでご自分でも条件設定してみると自動でコードを作成してくれるので、試してみてください。
No.1
- 回答日時:
Excel VBAを使用して、同じフォルダにある複数のExcelファイル(01.xls,02.xls,03.xls,04.xls,05.xls,06.xls,07.xls,08.xls,09.xls,10.xls)の各sheet1のB12セルの値をActive.xlsxのSheet1のセルのA1~A10に順次、転記する方法を以下に示します。
Sub CopyData()
Dim myPath As String, myFile As String, myExtension As String
Dim FldrPicker As FileDialog
Dim x As Workbook, y As Workbook
Dim ws As Worksheet
Dim i As Integer, j As Integer
'フォルダ選択ダイアログを表示
Set FldrPicker = Application.FileDialog(msoFileDialogFolderPicker)
With FldrPicker
.Title = "フォルダを選択してください。"
.AllowMultiSelect = False
If .Show <> -1 Then Exit Sub
myPath = .SelectedItems(1) & "\"
End With
'Active.xlsxを開く
Set y = Workbooks.Open(myPath & "Active.xlsx")
'各Excelファイルを開いてデータをコピーする
myExtension = "*.xls*"
myFile = Dir(myPath & myExtension)
Do While myFile <> ""
Set x = Workbooks.Open(myPath & myFile)
For Each ws In x.Worksheets
For i = 1 To 10
j = j + 1
y.Sheets(1).Cells(j, 1) = ws.Range("B12").Value
Next i
Next ws
x.Close False
myFile = Dir
Loop
'Active.xlsxを保存して閉じる
y.Save
y.Close
MsgBox "完了しました。"
End Sub
上記のコードをExcel VBAエディタに貼り付け、実行することで、同じフォルダにある複数のExcelファイルの各sheet1のB12セルの値をActive.xlsxのSheet1のセルのA1~A10に順次、転記することができます。フォルダ選択ダイアログが表示されるので、対象のフォルダを選択してください。また、Active.xlsxは事前に作成しておく必要があります。
(by 生成AI)
ご回答ありがとうございます。
コードを実行した結果、実行時エラー 1004
アプリケーション定義またはオブジェクト定義エラーとなりました
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) VBA CSV取り込みについて 3 2021/12/30 22:40
- Excel(エクセル) エクセルのマクロについて教えてください。 3 2023/02/07 14:47
- Excel(エクセル) Excel VBAどこが間違ってますか? 4 2023/07/17 10:04
- Excel(エクセル) Excel VBAについて【図形を組み合わせて作成した、料金別納表示の削除の仕方】 5 2023/11/16 01:27
- Excel(エクセル) Excelにて、行の最後のセルの値をコピーして別sheetに張りつけるVBAコードをご教授願います 3 2022/11/20 14:35
- Visual Basic(VBA) エクセルのマクロについて教えてください。 1 2022/03/28 14:52
- Visual Basic(VBA) シート名をフォルダ名に変更 1 2021/12/01 15:59
- Visual Basic(VBA) VBAコードを張り付け後のエクセルの進め方 2 2023/02/07 18:24
- Excel(エクセル) 【VBA】PDF出力に任意のファイル名前を付ける方法 3 2023/07/21 10:55
- Excel(エクセル) excelで検索した商品の画像(ネットワーク上の)を表示させたい。 3 2023/06/28 00:32
このQ&Aを見た人はこんなQ&Aも見ています
-
賃貸で可能な古民家風レトロな部屋作りのコツ!改めて知る畳の高い機能性と魅力も紹介
畳の部屋を雰囲気のよい部屋に仕上げたい!賃貸住宅でもできる古民家風のレトロな部屋作りのコツを伺った。
-
VBA 二つのブックをうまく扱えないでいます
Visual Basic(VBA)
-
ご教授お願いします。#NUM!が解消されません。
Visual Basic(VBA)
-
VBAのコードを教えてください
Visual Basic(VBA)
-
-
4
Excel VBAマクロをマスターするのに、どれ位時間掛かりますか?
Visual Basic(VBA)
-
5
A列B列どちらにもあるのを抽出する
Visual Basic(VBA)
-
6
VBA コード
Visual Basic(VBA)
-
7
excelのVBAについて、以下のコードに追加をお願いいたします。
Visual Basic(VBA)
-
8
ゆっくりムービーメーカーのエクセルVBAマクロがうごかない
Visual Basic(VBA)
-
9
VBEを開くのにコマンド名が「Visual Basic」な理由はなぜ?
Visual Basic(VBA)
-
10
Excel VBAでの数値の計算についておしえてください
Visual Basic(VBA)
-
11
ExcelのVBAのことで質問です。 以下のコードを入れ、ボタンを押せば作動させると写真のように画面
Visual Basic(VBA)
-
12
Excelセルに入力された文字の色を変える方法を教えてください
Visual Basic(VBA)
-
13
コードを直していただきたいです。 以下のコードはネットで拾ったものをほんの少しいじった物なのですが、
Visual Basic(VBA)
-
14
VBAコードが作動しません。修正したいのですが何処に原因かあるか教えて下さい。
Visual Basic(VBA)
-
15
Cellsのコードが打てません
Visual Basic(VBA)
-
16
Excel VBA マクロ シート名を変えずにA列にあるセル名の名前でファイルの分割をしたいです
Visual Basic(VBA)
-
17
VBAを教えていただきたいです。 添付のような「data sheet」があります。 他に、「集計 s
Visual Basic(VBA)
-
18
エクセルのマクロのコードについて
Visual Basic(VBA)
-
19
特定文字を入ってるCSVの特定の列を特定のexcelシートに取り込みたいです
Visual Basic(VBA)
-
20
ExcelのVBAコードを教えて頂けますでしょうか。 例シート2つがあります。 シート1は元データ
Visual Basic(VBA)
関連するカテゴリからQ&Aを探す
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
デスクトップの画像をhtmlに表...
-
ファイル名と同名のフォルダを...
-
C ファイル出力で、フォルダが...
-
ddraw.h
-
フォルダ内のPDFファイル名を変...
-
日付をつけたフォルダを作成し...
-
C#でフォルダをロックする方法
-
FOMA携帯内のSDカードのファイ...
-
Windows10でコマンドプロンプト...
-
VBAでファイル名を指定して保存...
-
ファイル名に特定の文字列を含...
-
ファイル保存時のダイアログ表...
-
Access VBA で フォルダ権限...
-
VBA 保存フォルダが変わっても...
-
Excelで、マクロ付きbookの自動...
-
機種依存文字を含むフォルダ/フ...
-
ツールを探しています。指定フ...
-
exclude xcopy 除外フォルダ指...
-
バッチファイルが保存されてい...
-
ファイルの解凍処理でフォルダ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Windows10でコマンドプロンプト...
-
ファイル名と同名のフォルダを...
-
VBA 最新のフォルダ取得
-
【マクロ】ファイル名の日付に...
-
windowsでテキストファイルの各...
-
デスクトップの画像をhtmlに表...
-
Access VBA で フォルダ権限...
-
フォルダ内のPDFファイル名を変...
-
パス名に2バイト文字(マルチバ...
-
多量のファイルをフォルダに自...
-
Excelで指定したフォルダに保存...
-
会社のネットワーク上のファイ...
-
ディレクトリ名変更してコピー...
-
VBA フォルダ名に特定の文字を...
-
エクセルマクロで指定フォルダ...
-
保存先のフォルダ名を指定した...
-
あるフォルダの中にあるファイ...
-
ExcelのVBAでフォルダ指定がで...
-
エクセルのマクロについて教え...
-
Excel VBA で フォルダ名の一部...
おすすめ情報