Выбрать дату в календареВыбрать дату в календаре

Страницы: 1 2 3 След.
VBA не находит ячейку по названию месяца
 
Sanja, спасибо разобрался. Нет в ячейке А1 найдет значение. Дело в том, что оказывается VBA и Excel по разному воспринимают дату. В русской версии Excel названия месяцев пишутся по русски Январь, Февраль а вот VBA понимает только английский язык: January, February
Код
Sub Дата()
Dim a As Range
Range("A1") = DateSerial(2025, 1, 1)
Set a = Range("A1").Find("January", , xlValues, xlPart)
If a Is Nothing ThenDebug.Print ("значение не найдено")
Else
Debug.Print ("Январь")
End If
End Sub
Изменено: olege1983 - 16.04.2025 07:06:06
VBA не находит ячейку по названию месяца
 
В ячейке A1 находится дата 01.01.2025 и отформатирована как "ММММ" и в ячейке отображается как "Январь". Поиском слово январь находится, но вот VBA через Find наотрез отказывается искать.
Код
Sub Дата()
Dim a As Range
Range("A1") = DateSerial(2025, 1, 1)
Set a = Range("A1").Find("Январь", , xlValues, xlPart)
If a Is Nothing Then
Debug.Print ("значение не найдено")
Else
Debug.Print ("Январь")
End If
End Sub
Изменено: olege1983 - 16.04.2025 06:50:51
Простейший код выдаёт ошибку
 
Да речь про этот код.
Спасибо за подсказку. А логика: код должен скопировать данные из изменённого графика и заменить их в основном годовом графике, должен попасть точно в заданный диапазон дат.
мне вот интересно как VBA не находит если визуально видно что в одной ячейке 31.03.2025 и в другой также.
Простейший код выдаёт ошибку
 
Уточнение ошибка при работе кнопки:
код:
Если запустить нажав на кнопку Сохранить изменения- ошибка связанная с match, если же код связанный с кнопкой запустить из окна VBA - ошибка та что в начале.
Простейший код выдаёт ошибку
 
Нашел причину. На листе у меня combobox с месяцами и список генерируется при открытии книги. Есть код в модуле книги:
Код
private sub workbook_open()
with Лист1.combobox1
.clear
.additem "Январь"
.additem "Февраль"
end with
end sub
Вопрос: как этот код может являться блокировкой доступа к ячейкам?
Простейший код выдаёт ошибку
 
Код ниже выдаёт ошибку:
Run-time error 1004. Application-defined or object-defined error.
Ошибка возникает только в одной книге. В новой и других - код работает нормально. Ошибка везде неважно какая ячейка или лист.
Код
Sub Test
Range("A1").Activate 
End sub
Vba ругается на if внутри функции
 
Sanja, вот формула из ячейки она рабочая и я хотел по подобию сделать в vba:
=ЕСЛИ(ЛЕВСИМВ(E7;2)<>"Ф-";ЕСЛИ(И(ЕОШ(ПОИСК("яч";H7))=ЛОЖЬ;ИЛИ(СВВ";M7="СМВ"));D7&" Ф-"&ПСТР(H7;ПОИСК("яч";H7)+4;ЕСЛИ(ЕОШ(ПОИСК(" ";H7;ПОИСК("яч";H7)+1))=ЛОЖЬ;ДЛСТР(H7)-ПОИСК(" ";H7;ПОИСК("яч";H7)+3)-1;ДЛСТР(H7)-(ПОИСК("яч";H7)+3)));"Оборудование");D7&" "&E7)
Vba ругается на if внутри функции
 
Sanja, к сожалению файл не могу прикрепить. Смысл такой:
в ячейке есть текст, где присутствует яч.XX, вот XX-это число, которое выявляется с помощью функции mid. все было бы хорошо если б число было последними символами, но в некоторых ячейках яч.ХХ находится в середине текста. Т.е. необходимо определить номер ячейки в тексте независимо от его положения в этом тексте. Номер ячейки может быть как однозначным так и двухзначным.
Изменено: olege1983 - 05.12.2024 09:17:21
Vba ругается на if внутри функции
 
Два дня не могу понять в чем ошибка, вроде все скобки верно расставлены, а VBA неугомонный выдает ошибку Compile error, explected и выделяет if isserr. Данное содержание работает если вписать его в ячейку в качестве формулы, но почему то не работает в VBA.
Код
Sub Сек()
Dim Typ As String 
Dim Curr As String 
Dim Ps As String 
Dim Vid As String 
Dim nCurr As Integer 
Dim nPs As Integer 
Dim nVid As Integer 
Dim I As Integer
Dim yach As Byte
nPs = WorksheetFunction.Match("Тип", Range("A14:Z14"), 0)
nCurr = WorksheetFunction.Match("Вид", Range("A14:Z14"), 0)
nVid = WorksheetFunction.Match("наименование", Range("A14:Z14"), 0)
Set adrCurr = Cells(14, nCurr)
Set adrPs = Cells(14, nPs)
'MsgBox (adrCurr.Value)

For I = 16 To 16

If Cells(I, nCurr).Value = "Оборудование" Then
    If Cells(I, nPs).Value = "ST=7" Or Cells(I, nPs).Value = "С2" Then
        if Right(Cells(I, nVid).Value, 2) = "№1" Or Mid(Cells(I, nVid).Value, WorksheetFunction.Search("яч", Cells(I, nVid)+3), _
         if isErr(WorksheetFunction.Search(" ", Cells(I, nVid), Search("яч", Cells(I, nVid)) + 1)) = False Then _
                worksheetfucntion.len(cells(i,nvid)) - worksheetfunction.Search(" ",cells(i,nvid),search("яч", cells(i,nvid)+3) else _
                worksheetfunction.len(cells(i,nvid)) -(worksheetfunction.Search("яч",cells(i,nvid))+3 <11 or _
                chr(right(cells(i, nvid),1) < 57 then
                
                Typ = "СШ-1"
                Else
                Typ = "СШ-2"
                End If
                End If
                worksheetfucntion.Len (Cells(I, nVid))
                End Sub
Не передаются данные из формы в модуль
 
спасибо попробую  
Не передаются данные из формы в модуль
 

Возникает ошибка в 6 строке «Method or data member not found».

Переменная sptchar должна браться из переменной txt всплывающей формы Razdelitel, но форма не открывается и сразу выходит эта ошибка,

Код
Sub Сцепить_запятая()Dim xRg As Variant, sptChar As StringDim Concatenatevisible As StringDim Scm As New DataObjectRazdelitel.ShowsptChar = Razdelitel.tXtSet xRg = Selection    Dim rg As Range    For Each rg In xRg        If (rg.EntireRow.Hidden = False) And (rg.EntireColumn.Hidden = False) Then            Concatenatevisible = Concatenatevisible & rg.Value & sptChar        End If    Next    Concatenatevisible = Left(Concatenatevisible, Len(Concatenatevisible) - Len(sptChar))    SetClipBoardText (Concatenatevisible)       MsgBox ("Значение" & Concatenatevisible & vbCr & "скопировано в буфер")End Sub

Изменено: olege1983 - 20.09.2024 11:31:12
Excel Vba путает число и месяц местами, VBA меняет местами число и месяц
 
Есть код, при котором на лист дата выводится неверно. Код укорочен для понимания.
Код
Sub test()
Dim Dat as string
Dim cDat as date
Dim M as byte, D as byte, Y as byte
Dim NewD
Dat="10.01.2024"
cdat=cDate(Dat)
D = day(cDat)
M= month(cDat)
Y=year(cDat)
NewD = msgbox(D & "." & M & "." & Y)
End Sub

Результат кода будет 01.10.2024

Такое происходит если число до первой точки меньше или равно 12.

Как управлять textboxом через переменную, управление формой textbox через переменную, наподобие функции Двссыл.
 

Необходимо чтобы можно было обращаться к элементам формы не только по их имени, а еще и через вычисленные значения к переменных.Пример кода:


Код
Sub Test2 
On error resume next 
dim ST() 
Dim SI
ST = array(Textbox1, Textbox2, Textbox3)
SI = ST(2).name 'Значение SI будет "Textbox3" 
'далее хочу чтобы в завимости от индекса ST чтобы автоматически закращивался нужный Textbox1 
SI.backcolor = vbGreen 'формула не работает, никакой Textbox не меняет цвет 
textbox3.backcolor = vbgreen ' вот так работает, но нужно указывать вручную
End sub
Изменено: olege1983 - 05.07.2024 07:31:09
Не работает надстройка
 
Надстройка должна добавлять пункт в контекстное меню.  Но пункт не появляется. Функция работает если только код ниже поместить в модуль книги:
Да и если заменить Private sub на обычный sub и запустить макрос, то пункт меню появится, но при попытке активировать кнопку выскакивает ошибка:
в строке Dim Scm As New DataObject  - compile error: user-defined type not defined (в файле надстройки ошибка есть, в модуле книги -ошибки нет)
Код
Private Sub Workbook_SheetBeforeRightClick(ByVal Sh As Object, ByVal Target As Range, Cancel As Boolean)
Dim cmdBarBut As CommandBarButton
    On Error Resume Next
With Application
    .CommandBars("cell").Controls("сцепить_запятая").Delete
    Set cmdBarBut = .CommandBars("cell").Controls.Add(Temporary:=True)
End With
        With cmdBarBut
            .Caption = "сцепить_запятая"
            .Style = msoButtonCaption
            .OnAction = "сцепить_запятая"
        End With
    On Error GoTo 0
End Sub

Sub Сцепить_запятая()
Dim D As Range, R As String, BP As Boolean
Dim avData, lr As Long, lc As Long, sRes As String
Dim oDict As Object, sTmpStr
Dim Scm As New DataObject
    Set oDict = CreateObject("Scripting.Dictionary")
    oDict.comparemode = 1
    Set D = Selection
    avData = D.Value
    R = ","
    If Not IsArray(avData) Then
        Scm = avData
        Exit Sub
    End If
 
    For lc = 1 To UBound(avData, 2)
        For lr = 1 To UBound(avData, 1)
            If Len(avData(lr, lc)) Then
                sRes = sRes & R & avData(lr, lc)
                If БезПовторов Then
                    If Not oDict.exists(avData(lr, lc)) Then
                        oDict.Add avData(lr, lc), 0&
                    End If
                End If
            End If
        Next lr
    Next lc
    If Len(sRes) Then
        sRes = Mid(sRes, Len(R) + 1)
    End If
 
    If BP Then
        sRes = ""
        sTmpStr = oDict.keys
        For lr = LBound(sTmpStr) To UBound(sTmpStr)
            sRes = sRes & IIf(sRes <> "", R, "") & sTmpStr(lr)
        Next lr
    End If
Scm.SetText (sRes)
Scm.PutInClipboard
    MsgBox ("Значение" & sRes & vbCr & "скопировано в буфер")
End Sub
Изменено: olege1983 - 24.04.2024 10:11:06
не повляется пользовательский пункт контекстного меню
 
Хочу добавить свой пункт в контекстное меню. Нашел код, но ничего кроме стандартных пунктов нет
Код
Private Sub workbook_deaktivate()
On Error Resume Next
With Application
CommandBars("cell").Controls("mymacro").Delete
End With
On Error GoTo 0
End Sub
Код
Private Sub Workbook_SheetBeforeRightClick(ByVal Sh As Object, ByVal Target As Range, Cancel As Boolean)Dim cmdBarBut As CommandBarButton On Error Resume NextWith ApplicationCommandBars("cell").Controls("MyMacro").DeleteSet cmdBarBut = .CommandBars("cell").Controls.Add(Temporary:=True)End WithWith cmdBarBut.Caption = "mymacro".Style = msoButtonCaption.OnAction = "mymacro"End With On Error GoTo 0End Sub
Изменено: olege1983 - 23.04.2024 16:13:30
Не создается именованный диапазон
 
вот так, заработало,  но почему макрорекордерная версия не работает. Забыл сказать, что я изменил начало кода:
Макрорекордер выдал Activeworkbook.Names и вот эту фразу я изменил на Worksheets
Код
Sub Добавить_имена()
Worksheets("График").Names.Add Name:="namecount", RefersToR1C1:=Range("CJ15:CJ4200")
Worksheets("График").Names.Add Name:="namecount2", RefersToR1C1:=Range("CM15:CM4200")
Worksheets("График").Names.Add Name:="namecount3", RefersToR1C1:=Range("CS15:CS4200")
Worksheets("График").Names.Add Name:="namecount4", RefersToR1C1:=Range("BP15:BP4200")
Worksheets("График").Names.Add Name:="namelist", RefersToR1C1:=Range("CJ15:CK4200")
Worksheets("График").Names.Add Name:="namelist2", RefersToR1C1:=Range("CM15:CM4200")
Worksheets("График").Names.Add Name:="namelist3", RefersToR1C1:=Range("CS15:CT4200")
Worksheets("График").Names.Add Name:="namelist4", RefersToR1C1:=Range("BP15:CBQ4200")
End Sub
Изменено: olege1983 - 27.03.2024 22:45:01
Не создается именованный диапазон
 
ZVI, Я в точности повторил,как записал макрорекордер (кнопка записать макрос).
Не создается именованный диапазон
 
Хочу создать макрос для создания группы именованных диапазонов. Но возникает проблема, сразу при запуске выскакивает ошибка.
Если убрать знаки $ то именованные диапазоны благополучно создаются, но не работают, ячейки которые ссылаются на них получают ошибку ИМЯ. В списке имен почему-то ячейки подсвечены одинарными кавычками =График!'CJ15':'CJ4200' (обратите внимание, в самом коде этих кавычек нет). Если убрать везде эти одинарные кавычки, то именованные диапазоны становятся работоспособными.
Код
Sub Добавить_имена()
Worksheets("График").Names.Add Name:="namecount", RefersToR1C1:="=График!$CJ$15:$CJ$4200"
Worksheets("График").Names.Add Name:="namecount2", RefersToR1C1:="=График!$CM$15:$CM$4200"
Worksheets("График").Names.Add Name:="namecount3", RefersToR1C1:="=График!$CS$15:$CS$4200"
Worksheets("График").Names.Add Name:="namecount4", RefersToR1C1:="=График!$BP$15:$BP$4200"
Worksheets("График").Names.Add Name:="namelist", RefersToR1C1:="=График!$CJ$15:$CK$4200"
Worksheets("График").Names.Add Name:="namelist2", RefersToR1C1:="=График!$CM$15:$CM$4200"
Worksheets("График").Names.Add Name:="namelist3", RefersToR1C1:="=График!$CS$15:$CT$4200"
Worksheets("График").Names.Add Name:="namelist4", RefersToR1C1:="=График!$BP$15:$CBQ$4200"
End Sub
Изменено: olege1983 - 27.03.2024 22:28:19
Код выдает ошибку Application defined or object defined error, хотя по логике не должен, Неверно работает функция match
 
Дмитрий(The_Prist) Щербаков, Спасибо попробую. В ячейках, позицию которую хочу найти на самом деле написано куда больше букв, например "Присоединение силового трансформатора".
Код выдает ошибку Application defined or object defined error, хотя по логике не должен, Неверно работает функция match
 
Цитата
написал:
"I1200"), 0)
Если убрать 0, то функция работает
Код выдает ошибку Application defined or object defined error, хотя по логике не должен, Неверно работает функция match
 
Никак не пойму почему в строке "Diapazon1 =" выходит ошибка "application defined or object defined" error.
В этой строке ведется поиск позиции в заданном диапазоне фрагмента текста.
Код
Sub Заполнение()
'On Error Resume Next
Dim Naimenov As String, Diapazon1 As Integer, Diapazon2 As Integer, Diapazon As Integer
Dim Nalichie As Boolean
Dim Drabot As Range, DVstavki As Range

Dim Pr1, Pr2
For i = 16 To 16
Naimenov = Left(Range("I" & i), 7)
Select Case Naimenov
Case "Присоед", "Секцион"
Nalichie = True
End Select
If Nalichie = True Then
    Set Drabot = Range("R" & i & ":" & "AC" & i)
    Pr1 = Range("I" & i + 1 & ":" & "I1200").Address
    Diapazon1 = WorksheetFunction.Match("Присоед", Range("I" & i + 1 & ":" & "I1200"), 0) - 1
    Diapazon2 = WorksheetFunction.Match("Секцион", Range("I" & i + 1 & ":" & "I1200"), 0) - 1
    If Diapazon1 < Diapazon2 Then Diapazon = Diapazon1 + i Else Diapazon = Diapazon2 + i
    Set DVstavki = Range("R" & i + 1 & ":" & "AC" & Diapazon)
    Pr2 = DVstavki.Address
    Drabot.Copy
    DVstavki.FillDown
End If
Next i
End Sub
Excel преобразует нумерацию №п.п. в десятичную дробь
 
добавил пробел после точки. С виду работает, но как только доходит до трехзначных чисел происходит нечто странное, строки
If Cells(i, "D").Interior.Color <> Cells(i - 1, "D").Interior.Color Then _    Cells(i, "D") = CStr(Cells(i - 1, "D")) & "." & CStr(Right(Cells(i - 1, "D"), 1)) Else
   Cells(i, "D") = CStr(Left(Cells(i - 1, "D"), Len(Cells(i - 1, "D")) - 3)) & "." & _
   CStr(Right(Cells(i - 1, "D"), 1) + 1)
начинает работать неправильно, когда цвет ячеек не равен друг другу, но ексель думает что они равны и принимает значение False., таким образом вместо 100. 1 выводит .1
Excel преобразует нумерацию №п.п. в десятичную дробь
 
Почему код ниже преобразует текстовое значение в числовое:
код ниже выводит Должен выводить
I
1
1,1
0,2
0,3
0,4
2
I
1
1.1
1.2
1.3
1.4
2
т.е. заменяет точку на запятую, причем принудительный перевод в текстовый режим не срабатывает, хоть сколько вложи cstr, как только VBA увидит, к примеру связку "1.1" он сразу в ячейке ее сделает как 1,1
Код
Sub Протянуть_нумерацию()
On Error Resume Next
Dim Ch, Lh, Nh, P
Dim CRed, CBlue, CDBlue, Cwhite
Ch = 0
Nh = 0
Lh = 0
P = 0
CRed = RGB(255, 200, 180)
CBlue = RGB(221, 235, 247)
CDBlue = RGB(184, 204, 228)
Cwhite = RGB(255, 255, 255)
For i = 15 To 20
Application.StatusBar = i
If Cells(i, "D").Interior.Color = CDBlue Then
Nh = Nh + 1
Ch = WorksheetFunction.Roman(Nh)
Cells(i, "D") = Ch
Else
If Cells(i, "D").Interior.Color = Cwhite Then
Lh = Lh + 1
Cells(i, "D") = Lh
Else
If Cells(i, "D").Interior.Color = CBlue Then

    If Cells(i, "D").Interior.Color <> Cells(i - 1, "D").Interior.Color Then _
    Cells(i, "D") = CStr(Cells(i - 1, "D")) & "." & CStr(Right(Cells(i - 1, "D"), 1)) Else
    Cells(i, "D") = CStr(Left(Cells(i - 1, "D"), Len(Cells(i - 1, "D")) - 3)) & "." & _
    CStr(Right(Cells(i - 1, "D"), 1) + 1)
End If
End If
End If
Next
Application.StatusBar = False
End Sub
Неправильно считает формула Счётеслимн
 
Цитата
написал:
=ЕСЛИ(И(A3="птица";СЧЁТЕСЛИМН(C$3:C3;C3;C$3:C3;"?*")=1);МАКС(B$2:B2)+1;"")
К сожалению неверное решение. Вы протягивали свою формулу? Она выдает сверху вниз: 1 . . . . . 5
Неправильно считает формула Счётеслимн
 
День добрый! Есть некий файл, где необходимо программно расставить порядковые номера птиц.
В файле есть два метода: 1. Без учета этой колонки и  2.с учетом колонки А - значение "Птица"

Формула считает правильно только во 1-м случае.
В 2-ом случае подсчет идет неверный, программа почему-то учитывает ячейки с нулевой длиной (в первом случае она не считала эти ячейки).
Если ради эксперимента очистить пустые ячейки, то формулы начинают считать верно. Но в тех ячейках формула.
VBA Копирование строк с формулами со сдвигом вниз
 
Код вроде работает как бы правильно, но не правильно: он вставляет формулы не из ячейки ниже а из ячейки выше, причем не имеет значения shift:XlUp или shift:xldown
Например если скопировать строку 2 и в ячейке B2 есть ссылка на ячейку B2 другого листа, затем выполнить вставку то ссылки будут не B2 и B3, а на B1 и . Т.е. подставит значения из ячейки выше.
Код
Sub Копирование_строк()
Dim NmSh As String, NmF As String, NewWb As String
Dim Rp
Application.ScreenUpdating = False
Dim n As Integer
Dim k As Integer, k1 As Integer
Dim m As Double, m1 As Double
n = Application.InputBox("Количество вставляемых строк", , , , , , , 1)
Do While n > 1000
n = Application.InputBox("Количество вставляемых строк", , , , , , , 1)
If n > 1000 Then '1
MsgBox ("вы ввели слишком много строк")
End If
Loop
If n = 0 Then
MsgBox ("вы не ввели никаких данных")
Exit Sub
End If
For i = 1 To n
m = n Mod 10
m1 = n Mod 100
    k = n - m
    k1 = n - m1
If i <= 10 Then '2
    Rows(Selection.row & ":" & Selection.row).Select
    With Selection
        .Copy
        .Insert Shift:=xlUp
    End With
End If
If i > 10 And i <= 100 Then '3
    i = i + 9
    If i <= 10 Then  '3.1
    Rows(Selection.row & ":" & Selection.row).Select
    With Selection
        .Copy
        .Insert Shift:=xlUp
    End With
    Else
    If i > 10 And i < k Then  '3.2
    Rows(Selection.row & ":" & Selection.row - 9).Select
    With Selection
        .Copy
        .Insert Shift:=xlUp
    End With
    Else
    If i > k And i < n Then '3.3
    i = i + 1
    Rows(Selection.row & ":" & Selection.row).Select
    With Selection
        .Copy
        .Insert Shift:=xlUp
    End With
    End If '3.3
    End If '3.2
    End If '3.1
    End If  '3
If i > 100 And i <= 1000 Then '4
      i = i + 99
    If i <= 10 Then  '4.1
    Rows(Selection.row & ":" & Selection.row).Select
    With Selection
        .Copy
        .Insert Shift:=xlUp
    End With
    Else
    If i > 10 And i < k Then  '4.2
    Rows(Selection.row & ":" & Selection.row - 9).Select
    With Selection
        .Copy
        .Insert Shift:=xlUp
    End With
    Else
    If i > 100 And i < k1 Then  '4.3
    Rows(Selection.row & ":" & Selection.row - 99).Select
    With Selection
        .Copy
        .Insert Shift:=xlUp
    End With
    Else
    If i > k And i < n Then '4.4
    i = i + 1
    Rows(Selection.row & ":" & Selection.row).Select
    With Selection
        .Copy
        .Insert Shift:=xlUp
    End With
    End If
    End If
    End If
    End If
    End If
   Application.StatusBar = i
    If i = n Then MsgBox ("успешно всталено " & i & "строк")
 Next i
 Application.ScreenUpdating = True
 Application.StatusBar = False
 End Sub
Изменено: olege1983 - 13.03.2024 11:06:08
Vba оставляет только целую часть числа, Vba вместо десятичной дроби взятой из ячейки в другую ячейку вставляет только ее целую часть
 
Дмитрий(The_Prist) Щербаков, Спасибо. Что то в голову пришло, что integer - это вещественный тип. Вспомнил что это целый тип
Изменено: olege1983 - 12.03.2024 09:28:48
Vba оставляет только целую часть числа, Vba вместо десятичной дроби взятой из ячейки в другую ячейку вставляет только ее целую часть
 
Почему при в ячейке вместо десятичной дроби появляется ее округленное число:
Например на листе 1 в столбце D записаны числа: 1,8 2,4 3,2 5,9
В итоговый столбец вместо чисел выше заносятся 2 2 3 6.
Т.е. как видно vba отбросил запятую и все что за ней предварительно округлив значение
Хотя Length имеет тип integer, значение Range("M" & I) становится целочисленным.
Код
Sub Длина_ВЛ()
Application.ScreenUpdating = False
Dim S As Variant, Length As Integer, Ei As String, Poz As Long
Dim Np As Long, Kp As Long
Np = Range("I15").Row
Kp = Range("I15").End(xlDown).Row - 1
For i = Np To Kp
Application.StatusBar = "Строка" & i & " из " & Kp
Set S = Worksheets("Лист1").Range("C:C").Find(Range("BM" & i), , xlValues, xlWhole, xlByRows)
Ei = Range("L" & i)
If Not S Is Nothing And Ei = "км" Then
Poz = WorksheetFunction.Match(S, Worksheets("Лист1").Range("C:C"), 0)
Length = Worksheets("Лист1").Range("D" & Poz)
Range("M" & i) = Leng
End If
Next i
Application.StatusBar = False
Application.ScreenUpdating = True
End Sub
Не находит значение в заданном диапазоне (subscript out of range)
 
Заново ввел строку и все заработало. Но не могу понять в чем там была ошибка?
Код
Set TR0 = Range(Cells(i, "T"), Cells(i, "AC")).Find("ТР", , xlValues, xlWhole, xlByColumns)
Изменено: olege1983 - 06.03.2024 10:50:22
Не находит значение в заданном диапазоне (subscript out of range)
 
МатросНаЗебре, что там не так?  
Страницы: 1 2 3 След.
Наверх