我想将包含多个表格的 Excel 工作表中的一些表格复制到另一个空工作表。对于我使用的所有复制和粘贴方法,每次都会出现相同的错误消息。这些是源表中的单元格大小与目标工作表上的单元格不匹配。 “粘贴”方法每次都失败。
Sub Données_générales()
Dim feuilleSource As Worksheet
Dim derniereLigne As Long
Dim debutTableauLigne As Long
Dim nb_lignes_tableau As Long
Dim nb_lignes_total As Long
nb_lignes_total = 0
Set feuilleSource = Workbooks("Indicateurs.xlsx").Sheets("Rapport1")
Windows("Rapport2.xlsm").Activate
Sheets("Tableaux1").Select
derniereLigne = 20
For i = 2 To derniereLigne
Dim numero_tableau As Double
numero_tableau = Val(Cells(i, 4).Value)
nb_lignes_tableau = Cells(i, 8).Value
debutTableauLigne = feuilleSource.Columns(1).Find(numero_tableau, LookIn:=xlValues, LookAt:=xlWhole).Row
feuilleSource.Rows(debutTableauLigne).Resize(nb_lignes_tableau).Copy
ThisWorkbook.Sheets("Données").Activate
ThisWorkbook.Sheets("Données").Cells(nb_lignes_total + 1, 2).PasteSpecial Paste:=xlPasteValues
Application.CutCopyMode = False
ThisWorkbook.Sheets("Données").Cells(nb_lignes_total + 1, 2).PasteSpecial Paste:=xlPasteFormats
Application.CutCopyMode = False
nb_lignes_total = nb_lignes_total + nb_lignes_tableau
Next i
End Sub
feuilleSource.Rows(debutTableauLigne).Resize(nb_lignes_tableau).Copy
Sheets("Données")
上的单元格中。但单元格位于 B 列。没有足够的空间来粘贴行。Cells(nb_lignes_total + 1, 1)
。ThisWorkbook.Sheets("Données").Cells(nb_lignes_total + 1, 2).PasteSpecial Paste:=xlPasteValues
PasteSpecial
引发运行时错误1004,因为第一个Application.CutCopyMode = False
清理了剪贴板。无法粘贴不应对某事..删除该代码行来修复它。ThisWorkbook.Sheets("Données").Cells(nb_lignes_total + 1, 2).PasteSpecial Paste:=xlPasteValues
Application.CutCopyMode = False
ThisWorkbook.Sheets("Données").Cells(nb_lignes_total + 1, 2).PasteSpecial Paste:=xlPasteFormats
Application.CutCopyMode = False