|
初めまして、ackknと申します。
どなたかご教示下さい、よろしくお願いします。
他のブックを開いて、シートの一部の値のみをスマートにコピーしたいのですが、力ずくで下記のコードでコピーしていますが、どう見てもスマートとは思えません。 初心者ですので、レベルアップしたく恥を忍んで投稿します。
どうかよろしくお願い致します。
Target_Cel(1) = "A5"
Target_Cel(2) = "B5"
'--- データファイルオープン
Application.ScreenUpdating = False
On Error GoTo ERR_Dtrans
Workbooks.Open (InFName)
On Error GoTo 0
Set TEST_DATA = ActiveSheet
'--- 実データエリアアドレス取得
Adr_Top(1) = Range("E2").Address
Adr_Btm(1) = Range("E65536").End(xlUp).Address
Adr_Top(2) = Range("K2").Address
Adr_Btm(2) = Range("K65536").End(xlUp).Address
'---データを取り込む
For i = 1 To 2
With TEST_DATA
.Activate
.Range(Adr_Top(i), Adr_Btm(i)).Select
Selection.Copy
End With
ThisWorkbook.Worksheets("MAIN").Activate
Range(Target_Cel(i)).Select
Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone, _
SkipBlanks:=False, Transpose:=False
Next i
Range(Target_Cel(1)).Select
Application.CutCopyMode = False '--- Clipboard Clear
'--- データファイルクローズ
Workbooks(FName).Close
Application.ScreenUpdating = True
Exit Sub
|
|