私はこのような問題があります。 複数のワークブックで同じテンプレートをデータと共有しています(「1.xlsx」、「2。 XLSX「...) A2:ファイル番号(例:中 『』 1.xlsxはファイル1 『』それはだ」) フィールド1フィールド2フィールド3フィールド4(D3に格納されたデータ:G40)Excel:1つのワークブックの列を抽出して別のワークブックに追加する
そして私は、ファイル名を持っています"Full.xlsx" ファイル番号フィールド1フィールド2
"1.xlsx"、 "2.xlsx" ...から "Full.xlsx"のSheet1にデータD3:E40をコピーする必要があります(Field1、Field2 )、A2はファイル番号
に行きますたとえば、私が持っている:
1.xlsx:
[A2] File1
[D2]Field1 [E2]Field2 [F2]Field3 [G2]Field4
[D3]aa [E3]bb [F3]cc [G3]dd
[D4]ee [E4]ff [F4]gg [G4]hh
...
2.xlsx:
[A2] File2
Field1 Field2 Field3 Field4
11 22 33 44
55 66 77 88
...
I need to have sheet1 in "Full.xlsx":
[A1]File# [B1]Filed1 [C1]Filed2
[A2]File1 [B2]aa [C2]bb
[A3]File1 [B3]ee [C3]ff
...
[A40]File2 [B40]11 [C40]22
[A41]File2 [B41]55 [C41]66
...
をいくつかのいずれかがこれを行う方法を教えていただけますか?更新
を(私はMSエクセル2010を使用しています):私は最終的に働く何か(それが最善の解決策ではないかもしれので、私はVBAに新たなんだ)
Public Sub copyrows()
Dim FileNum As String
Dim LastRow As Long, i As Long, Counter As Integer
Dim Dest As Workbook
Set Dest = Workbooks("Full.xlsm")
FileNum = Cells(2, 1).Value
Dest.Activate
LastRow = Dest.Worksheets("Sheet1").Range("C65536").End(xlUp).Row + 1
i = LastRow
For Counter = 3 To 40
Dest.Worksheets("Sheet1").Cells(i, 1).Value = FileNum
i = i + 1
Next
ThisWorkbook.Activate
ThisWorkbook.Worksheets("Sheet1").Range("D3", "E40").Copy
Dest.Activate
Dest.Worksheets("Sheet1").Range("B" & LastRow, "C" & i).Select
Selection.PasteSpecial Paste:=xlPasteAll, Operation:=xlNone, SkipBlanks:= _
False, Transpose:=False
End Sub
みんなに感謝を書きましたあなたのお気遣いに!
プログラムでやりたいですか?またはあなたはExcelの数式として同じものを行うに何かしたいですか? – Sumit
@Sumitを指定してください質問にはVBAが付いています。 – jonsca
@Sumit:どちらの方法でも問題ありません。私はただの仕事が必要です。もしあなたが知っていれば私を見せてください。 – Risa