Условная конкатенация и автозаполнение значением из соседнего столбца - PullRequest
0 голосов
/ 08 декабря 2018
Sub Concatenate ()  
    Dim LastRow As Long  
    Dim i As Long  
        LastRow = Range("A" & Rows.Count).End(xlUp).Row  
            ActiveSheet.Range("K2").Formula = "= TODAY() - I2"
            Range("K2").Select  
            Selection.AutoFill Destination:=Range("K2:K" & LastRow)  
        For i = 2 To LastRow  
            If Range("K" & i).Value < 5 Then Range("J2:J" & i).Value = "Week of" & "" & ("I2:I" & i)  
        Next i  
End Sub

У меня есть электронная таблица, в которой перечислены номера элементов в столбце A и соответствующие даты в столбце I. Не у каждого элемента будет дата, поэтому я основываю LastRow на столбце A, чтобы обойти пропуски.Я хочу, чтобы даты в прошлом возвращали 0 в столбце J. Я хочу, чтобы будущие даты возвращали «Неделю __», где __ - это дата в столбце I.

Я не очень знаком с VBA,и я столкнулся с небольшим препятствием.С учетом вышесказанного все возвращает «Неделя 9».Я знаю, что это простой ответ, но я гуглю уже час.Мне просто нужно знать синтаксис, чтобы вышеприведенное возвращало значение «I» в конце конкатенации, поскольку оно зацикливает строки.Если это дублирующий вопрос, я прошу прощения.

Заранее спасибо.

1 Ответ

0 голосов
/ 08 декабря 2018

Может быть, ваше состояние должно быть:

If Range("K" & i).Value < 5 Then Range("J" & i).Value = "Week of " & Range("I" & i)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...