1、打開A文件,在excel中按Alt+F11鍵進入VBA編程窗口
窗口中工具欄第二個圖標邊上的小三角形下拉下出來,選擇“模塊”,這就會在VBA中插入壹個新的模塊
2、現在在左邊欄雙擊模塊1,然後進入右邊模塊代碼的書寫窗口,寫入以下代碼
----------------------------------
Sub trans()
Dim wk As Workbook
Dim wkOpend As Boolean
Dim targetRow As Long
Dim targetCol As Long
Dim cellCnt As Long
Dim sourceWsh As Worksheet
Dim targetWsh As Worksheet
'判別B.xls文件是否打開,如未打開則打開它,要求B.xls與A.xls在同壹文件夾中
wkOpend = False
For Each wk In Workbooks
If wk.Name = "b.xls" Then
wkOpend = True
Exit For
End If
Next
If Not wkOpend Then
Workbooks.Open "B.xls"
End If
'設置源為目標工作表對象
Set sourceWsh = ThisWorkbook.Worksheets(1)
Set targetWsh = Workbooks("b.xls").Worksheets(1)
'開始復制填充操作
targetWsh.Range(Cells(2, 2), Cells(235, 4)).ClearContents
cellCnt = 2
For targetRow = 2 To 235 Step 2
For targetCol = 2 To 4
sourceWsh.Range("B" & cellCnt).Copy Destination:=targetWsh.Cells(targetRow, targetCol)
cellCnt = cellCnt + 1
Next
Next
End Sub
---------------------------------
3、先保存壹下a.xls
4、每次打開a.xls後,如果想進行妳要求的復制操作,只需要進行如下操作:
選擇“工具-宏-宏”菜單打開宏對話窗口,在裏面妳可以看到壹個名為“trans“的宏,選中它並點擊”執行“按鈕即可。
---------------------------------
這個程序的運行有兩個要求,壹是妳的B文件必須取名為”b.xls“,如果不是,則需要修改程序中相應的地方,我想妳找得到的;第二個要求是,b.xls必須與a文件在同壹個文件夾下,否則程序找不到b文件而無法進行打開操作。t