Я пытаюсь создать рабочие листы с именем, взятым из sheet1
клеток, но я всегда получаю 1004 error
при выполнении Worksheets(Worksheets.Count).name = companyName
1004 ошибка при попытке установить имя на листе XLs
Я попытался установить листы имя по PrefferedName
и работал ... и я также проверил с MsgBox
этой companyName
переменной есть имя последнего листа в ...
Sub Find2()
Dim i, k As Integer
Dim j, l As Integer
Dim Counter As Integer
Dim dateAnnounced As Date
Dim fromDate As Date
Dim currentCellDate As Date
Dim daysBefore As Integer
Dim kk As Integer
Dim from1 As Integer
Dim companyName As Variant
Set originsheet = ThisWorkbook.Worksheets("Sheet1")
daysBefore = 30
i = 3
j = 4
Counter = 0
k = 5
l = 4179
dateAnnounced = Cells(i, j).Value
For Each cel In Range(Cells(1, k), Cells(1, 4179))
currentCellDate = cel.Value
If currentCellDate = dateAnnounced Then
MsgBox k
Exit For
End If
k = k + 1
Next cel
kk = k
from1 = k - daysBefore
ThisWorkbook.Sheets.Add after:=Sheets(Worksheets.Count)
companyName = Worksheets("Sheet1").Cells(i, j - 1).Value
Worksheets(Worksheets.Count).name = companyName
MsgBox name
For Each cel In Range(Cells(1, from1), Cells(1, kk))
If from1 = kk Then
MsgBox cel.Value
Exit For
Else
Counter = Counter + 1
End If
from1 = from1 - 1
Next cel
MsgBox Counter
End Sub
Я не уверен, что проблема, но одна вещь, которую вы должны сделать, это положить Option Explicit в верхней части этого модуля. Это заставляет вас объявлять все переменные перед их использованием. Затем вы увидите, что «имя» не объявляется как переменная, которая влияет на один из ваших операторов MsgBox. Кроме того, хотя это не влияет на ваш код здесь, обратите внимание, что 'Dim i, k As Integer' означает' Dim i As Variant, k As Integer' –
Можете ли вы дать нам значение companyname? Не более 31 символов, нет? []? * \/"В нем? – KekuSemau
Ассоциированная группа Inc является фирмойName, никаких странных символов в ней. – agagelis