VBAで他のブックにコピペ | |
---|---|
[196000] VBAで他のブックにコピペ- ■親トピック/記事引用/メール受信=OFF■ □投稿者/ マイマイ -(2023/10/24(20:27)) □U R L/ 会社の管理台帳ファイルのデータ(PASSつき)から別のファイルにデータをコピペするVBAを考え中 VBA初心者なのでわからずこまっています おしえてください Sub ボタン1_Click() Dim FilePath As String Dim FileName As String Dim wb As Workbook Dim OpenFlag As Boolean 'ファイルの入っているフォルダをパスを設定 FilePath = C:\Users\user\OneDrive\デスクトップ\改善提案用\台帳データ 'ファイル名を設定 FileName = "コピー元.xlsx" 'コピー元のブックが存在するか確認 If Dir(FilePath & "\" & FileName) = "" Then '既に開いていたらメッセージを表示してSubを抜ける MsgBox FileName & "というファイルが存在しません" & vbCrLf & _ "指定のフォルダに該当のファイルを入れて実行し直してください" Exit Sub End If '既に開いているかをチェック For Each wb In Workbooks If wb.Name = FileName Then '既に開いていたらフラグを立ててfor文を抜ける OpenFlag = True Exit For End If Next wb 'フラグがFalseだったらコピー元のファイルが開いていないので、開く If OpenFlag = False Then 'コピー元のブックを開く Dim A 'ファイルパスを開く A = ThisWorkbook.Path & "\コピー元.xlsx" 'パスワード付きファイルを開く Workbooks.Open FileName:=A, Password:=ic Workbooks.Open FilePath & "\コピー元.xlsx" End If 'データをコピー Workbooks(FileName).Worksheets("台帳(参照用)").Range("A1:Y3600").Copy _ Workbooks(ThisWorkbook.Name).Worksheets("台帳(参照用)").Range("A1") 'コピー元のブックを閉じる(セーブしない) Workbooks(FileName).Close savechanges:=False 'データの編集(マクロの記録)のコード '省略 End Sub この記事にはVBAのコードが含まれています。 緑の太文字→注釈 茶色の太文字→条件分岐 赤の太文字→ループ 青の太文字→その他 |
このトピックに書きこむ |
---|