Все добрый день имеется код VBA, где значение ячейка A1 формируется другой ячейкой, данный код не работает подскажите пожалуйста как можно исправить. [vba]
Код
Option Explicit
Private Sub Worksheet_Change(ByVal Target As Range) If Target.Address = "$A$1" Then If Range("A1").Value = "42" Then Rows("2:3").EntireRow.Hidden = False Rows("4:5").EntireRow.Hidden = True ElseIf Range("A1").Value = "48" Then Rows("4:5").EntireRow.Hidden = True Rows("2:3").EntireRow.Hidden = False ElseIf Range("A1").Value = "52" Then Rows("2:5").EntireRow.Hidden = False
End If End If End Sub
[/vba]
Все добрый день имеется код VBA, где значение ячейка A1 формируется другой ячейкой, данный код не работает подскажите пожалуйста как можно исправить. [vba]
Код
Option Explicit
Private Sub Worksheet_Change(ByVal Target As Range) If Target.Address = "$A$1" Then If Range("A1").Value = "42" Then Rows("2:3").EntireRow.Hidden = False Rows("4:5").EntireRow.Hidden = True ElseIf Range("A1").Value = "48" Then Rows("4:5").EntireRow.Hidden = True Rows("2:3").EntireRow.Hidden = False ElseIf Range("A1").Value = "52" Then Rows("2:5").EntireRow.Hidden = False
Private Sub Worksheet_Calculate() If Range("A1").Value = "42" Then Rows("2:3").EntireRow.Hidden = False Rows("4:5").EntireRow.Hidden = True ElseIf Range("A1").Value = "48" Then Rows("4:5").EntireRow.Hidden = True Rows("2:3").EntireRow.Hidden = False ElseIf Range("A1").Value = "52" Then Rows("2:5").EntireRow.Hidden = False End If End Sub
[/vba]
так, наверное [vba]
Код
Private Sub Worksheet_Calculate() If Range("A1").Value = "42" Then Rows("2:3").EntireRow.Hidden = False Rows("4:5").EntireRow.Hidden = True ElseIf Range("A1").Value = "48" Then Rows("4:5").EntireRow.Hidden = True Rows("2:3").EntireRow.Hidden = False ElseIf Range("A1").Value = "52" Then Rows("2:5").EntireRow.Hidden = False End If End Sub
DenchikZ, а можно еще такой вопрос не работает если добавляются буквы к цифрам вместо "42" необходимо "К42" где значения этой ячейки сцепляются следующим образом=СЦЕПИТЬ("К";42), как выйти из этой ситуации
Private Sub Worksheet_Calculate() If Range("A1").Value = "К42" Then Rows("2:3").EntireRow.Hidden = False Rows("4:5").EntireRow.Hidden = True ElseIf Range("A1").Value = "К48" Then Rows("4:5").EntireRow.Hidden = True Rows("2:3").EntireRow.Hidden = False ElseIf Range("A1").Value = "К52" Then Rows("2:5").EntireRow.Hidden = False End If End Sub
DenchikZ, а можно еще такой вопрос не работает если добавляются буквы к цифрам вместо "42" необходимо "К42" где значения этой ячейки сцепляются следующим образом=СЦЕПИТЬ("К";42), как выйти из этой ситуации
Private Sub Worksheet_Calculate() If Range("A1").Value = "К42" Then Rows("2:3").EntireRow.Hidden = False Rows("4:5").EntireRow.Hidden = True ElseIf Range("A1").Value = "К48" Then Rows("4:5").EntireRow.Hidden = True Rows("2:3").EntireRow.Hidden = False ElseIf Range("A1").Value = "К52" Then Rows("2:5").EntireRow.Hidden = False End If End SubDenchikZ
Сообщение отредактировал DenchikZ - Пятница, 23.08.2024, 08:25
Nic70y, еще раз если есть возможность посмотреть не работает макрос со временем выдает ошибку 28, я так сказать еще чайник в этом вопросе заранее спасибо
Nic70y, еще раз если есть возможность посмотреть не работает макрос со временем выдает ошибку 28, я так сказать еще чайник в этом вопросе заранее спасибоDenchikZ
DenchikZ, я не знаю причину ошибки - типа не хватает памяти. если Вы вводите данные на одном листе, а затем переходите на лист с макросом, попробуйте[vba]
Код
Private Sub Worksheet_Calculate()
[/vba]заменить на[vba]
Код
Private Sub Worksheet_Activate()
[/vba]
DenchikZ, я не знаю причину ошибки - типа не хватает памяти. если Вы вводите данные на одном листе, а затем переходите на лист с макросом, попробуйте[vba]