Shing
@Shing

Почему макрос не копирует все столбцы?

Есть вот такой макрос, конечная его задача, это скопировать/вставить строки целиком, при совпадении, с листа на лист, со всеми столбцами.
Я поставил For i = 1 To 100, то есть вроде 100 столбцов должно брать.
А оно в итоге останавливается до сорокового столбца где-то... остальной хвост не копирует.

Worksheets(nl2).Activate
  lr2 = Cells(Rows.Count, nk2).End(xlUp).Row
  c = 1
  For i = 1 To 100
    If Cells(1, i) <> "" Then c = i
  Next i
  Worksheets(nl1).Activate
  lr = Cells(Rows.Count, nk1).End(xlUp).Row

  For i = 1 To lr
    s1 = LCase(Trim(Cells(i, nk1)))
    s1 = Replace(s1, "-", " ")
    kn = nkr
    For j = 1 To lr2
      s2 = LCase(Trim(Worksheets(nl2).Cells(j, nk2)))
      s2 = Replace(s2, "-", " ")
          
      If s1 = s2 Then
        Worksheets(nl2).Select
        Range(Cells(j, 1), Cells(j, c)).Select
        Application.CutCopyMode = False
        Selection.Copy
        Worksheets(nlr).Select
        Range(Cells(i, kn), Cells(i, kn)).Select
        ActiveSheet.Paste
        kn = kn + c
      End If
    Next j
  Next i
  Worksheets(nlr).Activate
  Application.ScreenUpdating = True
  Application.EnableEvents = True
  UserForm1.Hide
  • Вопрос задан
  • 60 просмотров
Решения вопроса 1
akelsey
@akelsey
Основываясь на:
А оно в итоге останавливается до сорокового столбца где-то... остальной хвост не копирует.


и куске кода:
If Cells(1, i) <> "" Then c = i

и не зная что там на листе, рискну предположить, что в сороковом столбце в первой ячейке отстутствуют значение?
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы