Страницы: 1
RSS
Не сохраняется макрос, Есть макрос, который должен помогать вставлять пустые ячейки при смене значения в ключевом столбце. Но есть нюанс...
 
Есть макрос, который должен помогать вставлять пустые ячейки при смене значения в ключевом столбце

Выглядит он так:


Но он не сохраняется.  
 
Private Sub Worksheet_Change(ByVal Target As Range)
   Dim WatchColumn As Range
   Dim Cell As Range

   ' Укажите диапазон, который вы хотите отслеживать (A1:A20)
   Set WatchColumn = Me.Range("A1:A20") ' Указан диапазон A1:A20

   ' Проверяем, изменен ли диапазон в отслеживаемом столбце
   If Not Intersect(Target, WatchColumn) Is Nothing Then
       Application.EnableEvents = False ' Отключаем события, чтобы избежать бесконечного цикла

       For Each Cell In Target
           If Cell.Value <> "" Then
               ' Вставляем пустую строку перед изменением значения
               Cell.EntireRow.Insert Shift:=xlDown
           End If
       Next Cell
       
       Application.EnableEvents = True ' Включаем события обратно
   End If
End Sub
 
Выдает следующую ошибку при  попытке сохранения:
"Будьте внимательны! В документе могут быть персональные данные, которые невозможно удалить с помощью инспектора документов"

В чем может быть проблема? Может в самом макросе?
 
добавьте эту строку в ваш макрос в конец
ActiveWorkbook.RemovePersonalInformation = False
 
При проверке инспектором документов есть только одно замечание
 
Цитата
написал:
добавьте эту строку в ваш макрос в конецActiveWorkbook.RemovePersonalInformation = False
а перед end sub или после?
 
Цитата
ivaner написал:
а перед end sub или после?
Перед
 
также выдает предупреждение
 
Как сохраняете файл, в какой формат?
 
Файл сохранен как Эксель с поддержкой макросов
 
ivaner, проверьте этот макрос - работает, можете ли сохранить изменения с макросом
 
Все так же. Либо не сохраняется, либо выдает предупреждение и не сохраняется в списке макросов (вызываю по команде alt+f8)
 
А вообще верно ли написан этот макрос? Может там в самом написании есть ошибки?  
 
Цитата
ivaner написал:
верно ли написан этот макрос?
- я же написал что работает.
"Me." вроде как лишнее, но не мешает.
 
Цитата
ivaner написал:
не сохраняется в списке макросов
- так вот в чём дело ))
Там и не будет, не должно.
 
В файле разброс был очень странный. У Вас получился построчно?
Я не могу сохранить
 
Хорошо. А как запустить тогда?
 
Цитата
ivaner написал:
А как запустить тогда?
- это макрос на событие, там так и написано - Worksheet_Change.
Нужно такое событие, и он работает как написан.
 
а вы можете прислать еще пример
где
было
1      и стало  1
1                     1
1                     1              
2
2                     2
3                     2  
3                  
4                     3
                      3  

                      4  

Задачу ставил во такую для макроса
Страницы: 1
Читают тему
Наверх