С некоторой помощью я собрал две функции, которые будут работать в унисон, чтобы сначала преобразовать все мои данные из «текстового» формата в «числовой» формат.После чего в каждом столбце будет установлено фиксированное количество символов.
Ниже перечислены две подпрограммы, которые я использую, но я не могу понять, как опустить определенные строки / столбцы для соответствующихfunctions.
При запуске функции psAdd я хочу опустить первые 3 строки из диапазона, а для функции FormatFixedNumber я хочу опустить несколько столбцов.Проблема с последним состоит в том, что у меня есть 1000+ столбцов данных и строка заголовка ключа, содержащая 1 или 0, которая представляет, должен ли столбец быть преобразован.
Как можно изменить этот код, чтобы пропустить первые 3 строкив первом подпункте и нескольких столбцах, помеченных 0 во втором?
Sub psAdd()
Dim x As Range 'Just a blank cell for variable
Dim z As Range 'Selection to work with
Set z = Cells
Set x = Range("A65536").End(xlUp).Offset(1)
If x <> "" Then
Exit Sub
Else
x.Copy
z.PasteSpecial Paste:=xlPasteAll, Operation:=xlAdd
Application.CutCopyMode = False 'Kill copy mode
End If
x.ClearContents 'Back to normal
End Sub
Sub FormatFixedNumber()
Dim i As Long
Application.ScreenUpdating = False
For i = 1 To lastCol 'replace 10 by the index of the last column of your spreadsheet
With Columns(i)
.NumberFormat = String(.Cells(2, 1), "0") 'number length is in second row
End With
Next i
Application.ScreenUpdating = True
End Sub