Я новичок в программировании макросов в Excel.Макро функции для увеличения значения ячеек EXCEL
До сих пор я был в состоянии создать программу, которая превращает
10.10.10.1
10.10.10.2
10.10.10.3
10.10.10.4
в
10.10.10.1
10.10.10.1
10.10.10.1
10.10.10.1
10.10.10.1
10.10.10.2
10.10.10.2
10.10.10.2
10.10.10.2
10.10.10.2
со следующим:
Sub CopyData()
Dim lRow As Long
Dim RepeatFactor
lRow = 1
Do While (Cells(lRow, "A") <> "")
RepeatFactor = 5
If ((RepeatFactor > 1) And IsNumeric(RepeatFactor)) Then
Range(Cells(lRow, "A"), Cells(lRow, "B")).Copy
Range(Cells(lRow + 1, "A"), Cells(lRow + RepeatFactor - 1, "B")).Select
Selection.Insert Shift:=xlDown
lRow = lRow + RepeatFactor - 1
End If
lRow = lRow + 1
Loop
End Sub
Но теперь, я пытаюсь, чтобы увеличить третий октет каждого IP-адреса до определенного числа, а затем повторите.
Вот что у меня есть:
И вот что я хотел бы:
Скажите, пожалуйста, какие функции я должен Google ....
Есть ли причина, по которой вы не можете использовать +? 'value = value + 1'' if value> 14 then value = value-5' – gtwebb
Я представил упрощенную версию моей проблемы. Я увеличиваю третий октет около 1000 IP-адресов, каждая область имеет 16 адресов, а некоторые из 3-х октетов не начинаются с 0, они могут начинаться с 16 или 56 и т. Д. И т. Д. ... следовательно, необходимо для автоматизации этого – Glowie
Это все еще не объясняет, почему вы не можете его автоматизировать с помощью простой инкрементной функции в vba. Поместите его в цикл, и когда вы нажмете максимальное значение, которое хотите увеличить, чтобы просто сбросить переменную, вы храните третий октет в – gtwebb