2016-02-28 3 views
-1

Я хотел бы создать цикл для вставки «онлайн» в столбце N, когда значение пустое. Это возможно?Excel Macro Вставить значение в Loop

+1

Да, конечно, это возможно. – Jeeped

+0

У вас есть образец или ссылка? –

+0

У меня есть этот сценарий уже: ActiveWorkbook.Sheets («medtour_enquiries») Диапазон.. («N1: N1000000») Автофильтр 1, «=» Мой следующий шаг, чтобы вставить «онлайн» на фильтрованной колонке –

ответ

1

Попробуйте этот код. Я предполагаю, что вы знаете последнюю строку в столбце N, иначе вам придется изменить ее на цикл do-while

Sub LoopN() 
Dim i As Long 
Dim n As Long 
n = cells(rows.count, "N").end(xlup).row 
For i = 1 To n 
If Cells(i, 14).Value = "" Then Cells(i, 14).Value = "online" 
Next i 
End Sub 
+0

довольно стандартный метод возврата последней заполненной ячейки в столбце будет выглядеть снизу вверх. Что-то вроде 'n = cells (rows.count," N "). End (xlup) .row' – Jeeped

+0

Вы правы Jeeped. Я отредактировал код соответственно. – David912

+0

Вот мой:. ActiveWorkbook.Sheets ("medtour_enquiries") Диапазон.. ("N1: N1000000") Автофильтра 1, "=" ActiveWorkbook.Sheets ("medtour_enquiries") клетки (2, 14) .Copy ActiveWorkbook .Sheets («medtour_enquiries»). Range («N2: N1000000»). SpecialCells (xlCellTypeVisible) .PasteSpecial ActiveWorkbook.Sheets («medtour_enquiries»). AutoFilterMode = False Теперь я хочу вместо копирования значения ячейки: ActiveWorkbook.Sheets ("medtour_enquiries"). Ячейки (2, 14) .Copy Я хочу скопировать пример строки = MyString = "online" –