Я общаюсь, потому что на компьютере системы работ я получаю ошибки во время выполнения на основных макросах (Excel 2010) операционной системы Windows. Эти ошибки не возникают в моих домашних системах Excel 2010 или 2016. Я не должен получать индексы вне диапазона ошибок при выполнении кода в новых файлах.Подзаголовок за пределами допустимого диапазона
Я написал их на своем компьютере без проблем.
Option Explicit
Sub MoveDataOtherSheets()
With Excel.ThisWorkbook.Sheets("Sheet3")
Dim cell
For Each cell In .Range(.Cells(2, 1), Cells(.Rows.Count, 1).End(Excel.xlUp))
If cell(1, 1) = "PERSONAL" Then
With Excel.ThisWorkbook.Sheets("Sheet4")
cell.EntireRow.Copy .Cells(.Rows.Count, 1).End(Excel.xlUp)(2, 1)
End With
End If
If cell(1, 1) = "COMPANY" Then
With Excel.ThisWorkbook.Sheets("Sheet5")
cell.EntireRow.Copy .Cells(.Rows.Count, 1).End(Excel.xlUp)(2, 1)
End With
End If
Next
End With
End Sub
где у вас есть ошибка? –
Кажется, что я дважды вставил один и тот же код –
проверить книгу, в которой находится макрос, на самом деле есть листы с именем «Лист1», «Лист2», «Лист3», «Лист4», «Лист5» и «Лист6». Кроме того, вам не хватает точки до появления второго «Ячейки» как в «Для каждой ячейки In .Range (.Cells (2, 1), Cells (.Rows.Count, 1) .End (Excel.xlUp))' Заявления – user3598756