他のブックにデータを自動転記する フォルタ゛内のファイル

  07 3月 2021

他のブックにデータを自動転記する フォルタ゛内のファイル。他のコピー項目を増やすなら、★のところに「/」で区切って追加してください。フォルタ゛内のファイル間の転記について教えてください
VBA勉強中の者です
フォルタ゛内には転記元、転記先、それらを転記させる操作用のファイルの3つがあります 転記元のフォルタ゛名が毎回変わるので、ファイル名を指定できず、転記元、転記先を開いている方のファイル、閉じている方のファイルで見分けさせようと思いました
そこで書いたのが以下のコードです

Sub test ()
Application ScreenUpdating = False

Dim Wb1 As Workbook & x27;転記元
Dim Wb2 As Workbook & x27;転記先
Dim sh As Worksheet

Set Wb1 = GetWb1
Set sh = Wb1 Worksheets(1)
Wb1 Worksheets(1) Range("F7:F8") Copy
Set Wb2 = GetWb2(Wb1)
With Wb2 Worksheets(1)
Range("B4") PasteSpecial xlPasteValues
End With
Wb2 Save
Wb2 Close

Set Wb1 = GetWb1
Set sh = Wb1 Worksheets(1)
Wb1 Worksheets(1) Range("H12") Copy
Set Wb2 = GetWb2(Wb1)
With Wb2 Worksheets(1)
Range("E13,G13") PasteSpecial xlPasteValues
End With
Wb2 Save
Wb2 Close

Set Wb1 = GetWb1
Set sh = Wb1 Worksheets(1)
Wb1 Worksheets(1) Range("T12") Copy
Set Wb2 = GetWb2(Wb1)
With Wb2 Worksheets(1)
Range("H13") PasteSpecial xlPasteValues
End With
Wb2 Save
Wb2 Close

?
?
?
?
End Sub

Function GetWb1() As Workbook
Dim Wb As Workbook
For Each Wb In Workbooks
If Wb Name = ThisWorkbook Name Then
ElseIf LCase(Wb Name) = "personal xlsb" Then
Else
Set GetWb1 = Wb
End If
Next
End Function

Function GetWb2(Wb1 As Workbook) As Workbook
Dim Fpath As String
Dim Fname As String
Fpath = Wb1 Path & "\"
Fname = Dir(Fpath & "* xlsm")
If Fname = Wb1 Name Then
Fname = Dir()
End If
Set GetWb2 = Workbooks Open(Fpath & Fname)
End Function

これで転記するセルは数十個あります
上記で転記は出来るのですが、セルを転記させるたびに転記先ファイルで上書き保存&閉じるを繰り返しているので、動きがとても重くなっています
もっと軽く動くようなコードは無いものかと質問させていただきました
転記元セルと転記先セルは毎回同じです Pivotテーブルのファイル間の絶対参照について。テーブルのファイル間の絶対参照について① フォルダごと例。
をコピペし。フォルダを作成念のために。コピー元も見てみると?
??当然同じファイル内のスプレッドシートを参照しています

他のブックにデータを自動転記する。今回は。他のブックへデータを自動で転記するマクロの作り方の手順を詳しく
解説します。シートがつしかない場合は新規にシート作成し。ここでは
のフォルダからダブルクリックしてファイル を開くのではなく。上記の
様に必ずの[ファイル]タブからますが。他のセルやシートの指定方法
については。過去にこの講座で色々と勉強してきましたのでそちらご参考
ください。当メルマガ講座では。簡単に出来るマクロ作成法のコツとその手順
を教えています。ファイルやフォルダーをコピーしたり移動したりする。ドライブにアプリケーションをインストールする方法を教えてください。 [+]
すべてを開く [-]すべてを閉じる コピーする

複数ブックのシートを1つのブックにコピーする:Excel。特定のフォルダにある複数のブックから。特定のシートをつのブックにコピーし
て集約します。 次のサンプルは。///フォルダ内のすべての
ブックについて。「報告書」という名前のシートを新規ブックにコピーします。補講:複数ファイル間でのデータ転記。この件は。所定のフォルダ内のファイルのリストをプログラム実行後に作成
しようという趣旨ではないかと思います。とりあえずやって[] このページの
メインテーマ「複数ファイル間でのデータ転記」についてお世話になります
また。転記するファイルのパスはパソコンのドライブから指定しないとダメな
ものと平気なものとの違いを教えてください。もしくは。特にどの講座であっ
たり。どの講義をみるとヒントがある。ということを教えていただけないでしょ
うか。

エクセルファイルブック間のデータの転記処理Excel2002以降。つまり。フォルダ内に存在するエクセルファイル全てについて。列行目の値と
列行目の値をコピーしてが表示されたら。一覧を下にスクロールして。「
」にチェックを入れてください。

他のコピー項目を増やすなら、★のところに「/」で区切って追加してください。未実行ですSub sampleDim Wb1 As Workbook '転記元ブックDim xAry1, xAry2, i As LongConst cAdr1 As String = F7:F8/H12/T12 '★転記元セルConst cAdr2 As String = B4/E13,G13/H13 '★転記先セルxAry1 = SplitcAdr1, /xAry2 = SplitcAdr2, /Set Wb1 = GetWb1Set sh1 = Wb1.Worksheets1Application.ScreenUpdating = FalseWith GetWb2Wb1 '転記先ブックWith .Worksheets1For i = LBoundxAry1 To UBoundxAry1sh1.RangexAry1i.Copy.RangexAry2i.PasteSpecial xlPasteValuesNext iEnd With.Save.CloseEnd WithApplication.ScreenUpdating = TrueEnd Sub

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です