我需要合併2個學生在不同工作簿(控股和子公司)之間的註冊。所以當我點擊「生成圖形」按鈕時,數據被合併到「總計」表中,然後計算課程數量(Excel,Word,Access ...)並在圖表「圖形」中生成圖形。第一個測試是可以的,但是當我再次點擊時,這個列表會隨着子公司工作簿的相同數據而增加。我需要更改代碼中的某些內容,但我不知道該怎麼做。 你能幫我嗎? 我的代碼是:如何合併2個不同工作簿之間的數據?
Sub GerarGrafico()
Dim k As Long
'copying data of the 「Course Booking」 Sheet
Sheets("Course Booking").Select
Range("A1").Select
linini = 2
'Select the last row
Selection.End(xlDown).Select
linfin = Selection.Row
'Select the last column
Selection.End(xlToRight).Select
colfin = Selection.Column
Range(Cells(linini, 1), Cells(linfin, colfin)).Select
Selection.Copy
在片材‘總計’
「複製數據
Sheets("Total").Select
Cells(linini, 1).Select
ActiveSheet.Paste
Application.CutCopyMode = False
‘Copying data of the 「reserva filial.xlsm」
caminho = ThisWorkbook.Path
Workbooks.Open caminho & "\" & "reserva filial.xlsm"
'copying data
Range("A1").Select
linini2 = 2
'Select the last row
Selection.End(xlDown).Select
linfin2 = Selection.Row
'Select the last column
Selection.End(xlToRight).Select
colfin2 = Selection.Column
Range(Cells(linini2, 1), Cells(linfin2, colfin2)).Select
Selection.Copy
Windows("Trabalho_Felipe Granado_v8.xlsm").Activate
Sheets("Total").Select
'Select the last row with value
Selection.End(xlDown).Select
k = ActiveCell.Row + 1
Cells(k, 1).Activate
Application.Windows("reserva filial.xlsm").Visible = False
'pasting data "reserva filial.xlsm" in the sheet "Total"
ActiveSheet.Paste
Application.CutCopyMode = False
Columns.HorizontalAlignment = xlCenter
謝謝,馬克。你說得對 我已經把在beggining此代碼: 昏暗的地區範圍 設置區域=表(「合計」)細胞(2,1).CurrentRegion region.ClearContents 和它的作品精細。所以每次點擊,我需要清除所有內容並粘貼當前或新生的列表。 再次感謝 – Granado
太棒了,很高興你有它的工作。從純粹的VBA代碼角度來看,它運行良好。 但是,我建議您考慮一下您的Excel項目將來如何發展。如果我正確地記得'.CurrentRegion'選擇一個單元格周圍的所有東西,直到它碰到空行和空白列。因此,如果您曾向「總計」表中的相鄰列添加了一些分析結果,那麼也會將其刪除。 這可能是一個完全不相關的用戶案例,但我想我會提及它以防萬一。如果一切都失敗了,您可以在工作表中添加一個註釋,說明留下空白的列/行! –