Скрытие формулы в выбранной ячейке

У меня ошибка в коде, он говорит, что .formula = TheFormula (переменная) не установлена. Пожалуйста, помогите мне решить этот сценарий. Я просто хочу скрыть формулу, когда я щелкнул значение ячейки.

     Private Sub Worksheet_SelectionChange(ByVal Target As Range)
        Dim Rng As Range
        Static Cell As Range
        Static TheFormula As String
        Set Rng = Range("n4:o25")
         If Not Application.Intersect(Target, Rng) Is Nothing Then
          If Not Cell Is Nothing Then
            Cell.Formula = TheFormula
          End If
         Set Cell = ActiveCell
        With Cell
         TheFormula = .Formula
          .Value = .Value
        End With
       Else
        With Cell
        .Formula = TheFormula
        End With
       End If
   End Sub
Преобразование HTML-таблицы в профессиональный документ Excel
Преобразование HTML-таблицы в профессиональный документ Excel
Это самый простой способ создания Excel из HTML-таблицы.
Импорт excel в laravel в базу данных
Импорт excel в laravel в базу данных
Здравствуйте, дорогой читатель, в этой статье я расскажу практическим и быстрым способом, как импортировать файл Excel в вашу базу данных с помощью...
1
0
72
2
Перейти к ответу Данный вопрос помечен как решенный

Ответы 2

У вас есть после if:

    Set Cell = ActiveCell

но этого не хватает в вашей else части.

Ответ принят как подходящий

Используйте следующий код. Он удаляет формулу (сохраняет только значение), если вы выберете любую ячейку в диапазоне «n4: o25», но если вы выберете что-то еще, она ничего не сделает.

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim Rng As Range
Static Cell As Range
Set Rng = Range("n4:o25")
  If Not Application.Intersect(Target, Rng) Is Nothing Then
    Set Cell = ActiveCell
    If Not Cell Is Nothing Then
      Cell.Value = Cell.Value
    End If
  End If
End Sub

МАШААЛЛАХ! Большое спасибо, сэр! Код идеален!

mij nivek 21.12.2020 08:44

Другие вопросы по теме