Как предотвратить удаление определенного листа в Excel?
Удаление листов после определенного листа
Мне нужно удалить все листы, которые следуют за листом с именем «модель 1».
До сих пор я старался
Однако я получаю сообщение об ошибке «The Delete method of the Worksheet class failed». Есть ли у кого-нибудь решение этой проблемы?
4 ответа
- Именование вставленного рабочего листа как другого
Я хочу добавить новый лист в рабочую книгу и назвать его так же, как и активный лист, но с символом ‘ после него. Поэтому если имя активного листа 0908, то я хочу, чтобы имя нового вставленного листа было 0908’. Я провел небольшое исследование и увидел, как назвать лист со ссылкой на что-то другое, но только.
Давно хотел спросить. Мне нужен VBA, чтобы назвать мои рабочие листы Тест 1, Тест 2 и т.д. На активном листе и справа. ИЛИ сделать то же самое для всех выбранных листов. Чтобы переименовать блок из 10 листов, я бы выбрал блок из 10 листов и запустил свой макрос. Какой именно тест 10 вы выберете, не имеет значения.
Получите номер индексного листа, а затем удалите все листы выше этого.
Важно убедиться, что «шаблон 1» не является единственным или последним листом в книге. Также необходимо удалить с последнего листа обратно на первый — что, как я вижу, вы и сделали в исходном коде.
Он также должен подтвердить, что один лист виден, но он предполагает, что «шаблон 1» будет виден, поэтому он не проверяет это. 🙂
Edit 2: Я добавил проверку на существование шаблона 1. Обычно я отправляю это в отдельную функцию, которая возвращает TRUE/FALSE.
Редактирование 3: Извините! Переименовать электронную таблицу в лист, чтобы включить лист диаграмм.
Единственное, что я могу придумать, что может вызвать эту ошибку, это наличие «очень скрытого» листа в вашей рабочей книге. Лист «Очень скрытый» не будет удален вашей функцией. Попробуйте это:
Таким образом, все удаляемые листы будут «скрыты», что позволит удалить их без отображения. Если лист должен оставаться «Очень скрытым», используйте это:
- Надстройка Excel: Как обнаружить/препятствовать удалению рабочего листа пользователем Excel?
Вот моя среда: Visual Studio 2013 MS Office 2013 C# Я только что обнаружил событие SheetBeforeDelete, которое очень полезно для моей ситуации. Однако кажется, что все, чего может ожидать программист, — это уведомление о предстоящем, неизбежном исчезновении рабочего листа. Что.
Моя рабочая книга имеет динамическое количество листов. Соответствующие листы, к которым я хочу получить доступ, всегда появляются после листа 3. Проблема в том, что соответствующие листы имеют динамические имена, такие как Apple-A, Orange-1 и т.д. И я хотел создать код, который.
Вы можете попробовать использовать макросы после сохранения файла, если вы включите макросы:
Похожие вопросы:
Возможный дубликат : . У меня есть файл Excel на диске C, который я пытаюсь удалить с помощью Net Excel Interop. Как я могу удалить один из рабочих листов из этого файла с помощью c#?
У меня есть рабочая книга, состоящая из основного листа для сбора ежемесячных данных и нескольких листов с данными. Мне нужно извлечь данные из всех рабочих листов (только общий столбец C14-D14) в.
У меня есть несколько листов с данными по всем из них. Я хочу удалить листы, начиная с листа №4 и заканчивая неограниченным листом. Я попробовал следующий код: Sub Удалить_листы() Application.ScreenUpdating = False Dim j As.
Я хочу добавить новый лист в рабочую книгу и назвать его точно так же, как активный лист, но с символом ‘ после него. Так, если имя активного листа 0908, я хотел бы узнать имя нового вставленного листа.
Давно хотел спросить. Я ищу VBA, чтобы назвать мои рабочие листы Тест 1, Тест 2 и т.д. Начиная с активного листа и все справа. ИЛИ сделать то же самое для всех выбранных листов. Например, я бы выбрал блок из 10 листов.
Visual Studio 2013 MS Office 2013 C# Я только что обнаружил событие SheetBeforeDelete, которое очень полезно для моего приложения. Однако, похоже, это все, что оно может сделать.
У меня есть рабочая книга, которая имеет динамическое количество листов. Соответствующие листы, которые я хочу извлечь, всегда появляются после листа 3. Проблема в том, что соответствующий.
Я хочу разделить мой файл на отдельные файлы, которые будут скопированы в один и тот же путь. Макрос VBA должен разделять все листы. Макрос должен начинаться с первого листа после заданного листа.
В ходе своей работы я столкнулся с проблемой. У меня более 100 листов в excel, и я хотел бы извлечь значения из определенного места (I25:K25, I50:K50, I95:K95) с именем листа.
Я хочу добавить лист после общего количества листов, имеющихся в рабочей книге. Я объявил переменную для пользователя, чтобы дать имя новому листу. У меня есть условие, чтобы поймать ошибку, если.
Динамическая защита листа от случайного удаления в Excel
В моей рабочей книге есть листы, которые требуют динамической защиты. У меня много разных листов, и иногда я случайно удаляю тот, который мне нужен.
Если ячейка OP15 содержит значение, это означает, что я могу удалить лист, чтобы очистить рабочую книгу. Как я могу создать защиту для листов, которая позволит мне удалять их только в том случае, если ячейка OP15 содержит значение?
Ближайший вариант, который я нашел в Интернете, примерно такой:
2 ответа
- Запретить пользователям удалять определенные электронные таблицы.
Защита структуры рабочей книги не позволит пользователю удалять листы. Но как я могу (используя VBA) запретить пользователю удалять конкретный лист, который я ему назначаю? Я видел примеры, когда активный лист не может быть удален Set mymenubar = CommandBars.ActiveMenuBar.
Я создаю лист excel из java-программы, и пользователь может обновлять лист excel. Я прочитал тот же файл excel из другой программы. Я хочу ограничить пользователя в удалении ячейки в листе excel, могу ли я сделать то же самое в java? Я искал в Интернете, но не нашел решения этой проблемы. Это одно и то же.
Этот код размещен в коде листа моего шаблона администратора. В ячейке A1 закодировано слово «шаблон администратора». При копировании шаблона ячейка A1 переименовывается в имя новой вкладки.
Это копируется в один из
BeforeDelete не перегружен, поэтому вы не можете предотвратить удаление листа.
С этого сайта, вы можете скопировать лист и тем самым предотвратить его удаление. Эта процедура позволяет решить, сохранять ли лист от удаления или нет:
Похожие вопросы:
У меня вопрос, связанный с моим предыдущим сообщением. Можете ли вы объяснить или предоставить ссылку, описывающую, как на самом деле работает защита паролем кода Excel VBA в версиях до 2007 года? В чем.
Я впервые увидел здесь, что домашний каталог коллеги мог быть частично удален (2 часа потеряны во время критической фазы проекта). Обеспокоенный этим, я начал думать об этом.
Я нашел способ скрыть листы Excel следующим образом: установите видимость листа на VeryHidden в свойствах VBAProject, а затем защитите свойства VBAProject паролем. Это здорово, но это в Excel 2007.
Защита структуры рабочей книги не позволит пользователю удалять листы. Но как я могу (используя VBA) запретить пользователю удалять конкретный рабочий лист, который я ему назначаю? Я видел примеры, когда.
Я создаю лист excel из java-программы, и пользователь может обновлять этот лист. Был прочитан файл excel из другой программы. Пользователь не может удалить ячейку из листа Excel.
Мое android-приложение создает каталог (myDir) и сохраняет в нем файл .txt (config.txt). Эти два файла будут созданы в памяти телефона при первом запуске приложения.
У меня есть таблица pivot на листе 2 моего листа Excel, как я могу скопировать всю таблицу с листа 2 в тело письма Outlook, используя Outlook VBA?
У меня есть защищенный лист Excel с командной кнопкой для удаления строк. Пользователи могут выделить несколько строк и удалить их, нажав на командную кнопку. Но я не хочу первого.
Существует ли более надежный способ защиты листов Excel без встраивания пароля в код vba с помощью sheet.Protect? Требуемая функциональность заключается в копировании листов excel с помощью макроса и.
У нас есть контейнер docker (mongodb), который мы используем, с монтируемым томом для постоянного хранения. Я хотел бы защитить контейнер и/или том от случайного удаления с помощью команд docker.