[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]
『VBA フォルダ内のブックに同じ処理を行う』(ふふ)
フォルダ内のブックに同じ処理をさせるVBAを試しに書こうとしたのですが、
なぜか実行しても何も起きません。
どうしてでしょうか?
全てのブックに『Hello!』と入力されるものを書いているつもりでしたが、、、
VBAに詳しい方、どうかご教授願います。m(_ _)m
Sub Sample()
Dim Path As String Dim Book As String
Path = "C:\Users\fu\Desktop\☆★エクセル★☆ \VBA 試しフォルダ" Book = Dir(Path & "*.xlsx")
Do While Book <> "" Workbooks.Open Path & Book
Cells(1.1).Value = "Hello!"
ActiveWorkbook.Save ActiveWorkbook.Close
Book = Dir() Loop End Sub
< 使用 Excel:Excel2019、使用 OS:Windows10 >
「C:\Users\fu\Desktop」フォルダに、
「☆★エクセル★☆ \VBA 試しフォルダ*.xlsx」というファイルが存在しないからでしょう。
(わからん) 2022/06/14(火) 11:06
被りますが。
Pathの最後の「\」が抜けてるから。 (通りすがり) 2022/06/14(火) 11:08
> ActiveWorkbook.Save > ActiveWorkbook.Close
ループの中に入ってますが大丈夫でしょうか? 一つ目で閉じちゃいますよ。 (通りすがり) 2022/06/14(火) 11:13
↑ループの中でないとダメでしたね。 スルー願います。 (通りすがり) 2022/06/14(火) 11:14
ブックオブジェクト、ワークシートオブジェクトを 変数で宣言して処理する方法です。 ※コードの一部のみ
’変数宣言部 Dim wb As Workbook Dim ws As Worksheet
'ループの中 Set wb = Workbooks.Open(Path & Book) Set ws = wb.Worksheets(1) wsCells(1.1).Value = "Hello!" wb.Close SaveChanges:=True Set ws = Nothing Set wb = Nothing (通りすがり) 2022/06/14(火) 11:22
> wsCells(1.1).Value = "Hello!"
↓の間違いでした。
ws.Cells(1.1).Value = "Hello!"
(通りすがり) 2022/06/14(火) 11:23
[ 一覧(最新更新順) ]
YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki.
Modified by kazu.