Я написал эту функцию, где я могу предоставить лист, и он должен преобразовать первый столбец в числовые значения c из строки. но когда я вызвал функцию из подпрограммы, она не выполняет свою работу.
Function ConvertTextToNumber(Worksheet As Worksheet)
If (Worksheet.Name = "TB") Or (Worksheet.Name = "JE") Then
[A:A].Select
With Selection
.NumberFormat = "General"
.Value = .Value
End With
ElseIf Worksheet.Name = "GLACCOUNT1100" Then
[D:D].Select
With Selection
.NumberFormat = "General"
.Value = .Value
End With
End If
End Function
, затем я вызвал ее внутри этой подпрограммы
Sub Select_Global_Account()
Dim length As Long, i As Long
Dim Start_range As Long, End_range As Long
' range input for the account number
Start_range = shStart.Range("P25").Value
End_range = shStart.Range("S25").Value
'================== converToNumber the acount column
Call helper.ConvertTextToNumber(shTB)
'===================
Call Iterate_In_Range(Start_range, End_range)
' JE report
Call JEReport.JEReport
' GL report
Call GL1100.AmountDate
остальная часть кода работает нормально , только helper.ConvertTextToNumber (shTB) не изменяет текст на строку