Приветствую Вас ГУРУ. С очередной проблемой обращаюсь к Вам в очередной раз для помощи в решении проблемы. Не могу объединить два макроса для увеличения шрифта и поиск по любому вхождению в ячейке столбца С на листе Донесение с выбором данных из списка с листа Имущество (Ошибка компиляции).
Приветствую Вас ГУРУ. С очередной проблемой обращаюсь к Вам в очередной раз для помощи в решении проблемы. Не могу объединить два макроса для увеличения шрифта и поиск по любому вхождению в ячейке столбца С на листе Донесение с выбором данных из списка с листа Имущество (Ошибка компиляции).bosika
Здравствуйте. У вас два Worksheet_SelectionChange на одном листе. Переместите всё в одну процедуру. Последний, на который ругается, удалите. Типа так[vba]
Код
Private Sub Worksheet_SelectionChange(ByVal Target As Range) If Target.CountLarge > 1 Then Exit Sub Select Case Target.Column Case 3 If Target.Row > 1 Then bu = True With Me.TextBox1 .Top = Target.Top: .Left = Target.Left: .Text = Target.Value: .Activate End With With Me.ListBox1 .Top = Target.Top - 5: .Left = Target.Left + 143: .Clear End With cl = IIf(Target.Column = 3): bu = False Me.TextBox1.Visible = True: Me.ListBox1.Visible = True End If Case Else Me.TextBox1.Visible = False: Me.ListBox1.Visible = False End Select On Error GoTo LZoom Dim xZoom As Long xZoom = 100 If Target.Validation.Type = xlValidateList Then xZoom = 130 'xZoom = 130 - 130 размер шрифта LZoom: ActiveWindow.Zoom = xZoom
End Sub
[/vba]
Здравствуйте. У вас два Worksheet_SelectionChange на одном листе. Переместите всё в одну процедуру. Последний, на который ругается, удалите. Типа так[vba]
Код
Private Sub Worksheet_SelectionChange(ByVal Target As Range) If Target.CountLarge > 1 Then Exit Sub Select Case Target.Column Case 3 If Target.Row > 1 Then bu = True With Me.TextBox1 .Top = Target.Top: .Left = Target.Left: .Text = Target.Value: .Activate End With With Me.ListBox1 .Top = Target.Top - 5: .Left = Target.Left + 143: .Clear End With cl = IIf(Target.Column = 3): bu = False Me.TextBox1.Visible = True: Me.ListBox1.Visible = True End If Case Else Me.TextBox1.Visible = False: Me.ListBox1.Visible = False End Select On Error GoTo LZoom Dim xZoom As Long xZoom = 100 If Target.Validation.Type = xlValidateList Then xZoom = 130 'xZoom = 130 - 130 размер шрифта LZoom: ActiveWindow.Zoom = xZoom
RAN, Макрос по поиску по любому вхождению я использую еще в одном файле, форму никакую не требует. Но конечно просмотрю тот файл, откуда его взял. Спасибо за подсказку.
RAN, Макрос по поиску по любому вхождению я использую еще в одном файле, форму никакую не требует. Но конечно просмотрю тот файл, откуда его взял. Спасибо за подсказку.bosika
Начинающий. Много и долго не пинать. Больно однако.
RAN, Да, в файле с которого я этот код брал, именно так и есть, все на одном листе. А как объяснить что происходит с кодом в этом файле, где на разных листах. Файл прилагаю.
RAN, Да, в файле с которого я этот код брал, именно так и есть, все на одном листе. А как объяснить что происходит с кодом в этом файле, где на разных листах. Файл прилагаю.bosika
Объясняю - работает. Но там, во первых, есть и TextBox1, и ListBox1, а, во вторых, там шаловливые ручки код не коверкали. Не знаю, откуда это выросло, [vba]
Код
cl = IIf(Target.Column = 3)
[/vba] но работать это точно не будет. От слов совсем, никогда и нигде.
Объясняю - работает. Но там, во первых, есть и TextBox1, и ListBox1, а, во вторых, там шаловливые ручки код не коверкали. Не знаю, откуда это выросло, [vba]
Код
cl = IIf(Target.Column = 3)
[/vba] но работать это точно не будет. От слов совсем, никогда и нигде.RAN