Цикл по столбцам в VBA - PullRequest
0 голосов
/ 15 июня 2019

Мне нужно выбрать определенный диапазон значений из определенного столбца вместо всего столбца.Это мой кодПросьба помочь.

Option Explicit

Public i As Long
Public SubIsRunning As Boolean

Sub initiatesubs()

    If Not SubIsRunning = True Then
        i = 3
        Call copyvalues
        SubIsRunning = True
    End If

End Sub

Sub copyvalues()

    Sheets(2).Columns(i).Value = Sheets(1).Range("C11:C90").Value
    Sheets(3).Columns(i).Value = Sheets(1).Range("U11:U90").Value
    Sheets(2).Range("B11:B90").Value = Sheets(1).Range("L11:L90").Value
    Sheets(3).Range("B11:B90").Value = Sheets(1).Range("L11:L90").Value

    i = i + 1

    Application.OnTime Now + TimeValue("00:04:00"), "copyvalues"
    Debug.Print Now + TimeValue("00:04:00")

End Sub

1 Ответ

0 голосов
/ 15 июня 2019

У меня нет времени, чтобы завершить ответ, но приведенный ниже код поможет вам начать. Вам понадобится условие, чтобы остановить цикл, когда вы достигнете строки 90

Option Explicit

Public i As Long
Public SubIsRunning As Boolean

Sub initiatesubs()
  If Not SubIsRunning = True Then
    i = 3
    Call copyvalues
    SubIsRunning = True
  End If
End Sub

Sub copyvalues()

   Sheets(2).Columns(i).Value =        Sheets(1).Range("C11").offset(i-3).Value

   Sheets(3).Columns(i).Value = Sheets(1).Range("U11").offset(i-3).Value

   Sheets(2).Range("B11").offset(i-3).Value =         Sheets(1).Range("L11").offset(i-3).Value

   Sheets(3).Range("B11").offset(i-3).Value = Sheets(1).Range("L11").offset(i-3).Value

   i = i + 1

  Application.OnTime Now + TimeValue("00:04:00"), "copyvalues"
  Debug.Print Now + TimeValue("00:04:00")
End Sub
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...