ID非公開さん
2022/1/8 7:11
2回答
エクセルのVBAについてお尋ねします。 ・職場の各職員が入力している業務日誌を一覧できるように一つにまとめたい ・業務日誌にはパスワードが設定されている
エクセルのVBAについてお尋ねします。 ・職場の各職員が入力している業務日誌を一覧できるように一つにまとめたい ・業務日誌にはパスワードが設定されている ・パスワードはPW.xlsmで管理している ・PW.xlsmに一覧表(01月)を作成したい ・本VBAはPW.xlsmに作成 ・業務日誌は毎日更新される ・職員数は増減する可能性がある ●以下のVBAだと一人目の業務日誌のコピペはうまくいくのですが、二人目のファイルが開かれません。初心者なので改良方法について優しく教えていただけると助かります。 Sub 一覧表作成() Dim A As String, B As Range, cnt As Long A = Dir("C:\業務日誌\*業務日誌*.xlsm") Do While A <> "" Set B = Range("b:b").Find(A, lookat:=xlWhole) If B Is Nothing Then Debug.Print A & "はありません" Else Workbooks.Open Filename:="C:\業務日誌\" & A, Password:=B.Offset(0, 1) Sheets("01月").Select Range("B1:J100").Select Selection.Copy Windows("PW.xlsm").Activate Sheets("01月").Select cnt = cnt + 1 Cells(cnt, 2).Select Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks:=False, Transpose:=False Selection.PasteSpecial Paste:=xlPasteFormats, Operation:=xlNone, SkipBlanks:=False, Transpose:=False Application.DisplayAlerts = False Workbooks(A).Close cnt = cnt + 100 End If A = Dir() Loop End Sub
Visual Basic | Excel・393閲覧
ベストアンサー
ID非公開さん
質問者2022/1/8 8:01
ありがとうございます。 確認してみます。
質問者からのお礼コメント
おかげさまで無事解決しました。 解決の手法も教えていただきありがとうございました。 takさんも丁寧に教えて頂きまして、大変感謝しています。
お礼日時:1/11 12:37