Гость
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / VBA Найти/удалить объект Access, содержащий любые символы / 17 сообщений из 17, страница 1 из 1
01.12.2020, 13:25
    #40023617
Лысёк
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
VBA Найти/удалить объект Access, содержащий любые символы
Требуется написать модуль VBA, который при открытии базы данных удаляет таблицу с любым именем (или все таблицы, при этом имена таблиц любые). (Access 2016).
...
Рейтинг: 0 / 0
01.12.2020, 13:53
    #40023627
Лысёк
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
VBA Найти/удалить объект Access, содержащий любые символы
Со срабатыванием при открытии разобрался, для этого необходимо создать макрос с именем Autoexec, в который можно вставить что угодно, полный ответ тут https://www.sql.ru/forum/429654/autoexec-zapusk-modulya
Теперь нужно чтобы команда
Код: vbnet
1.
DoCmd.DeleteObject acTable, "Таблица1"


удаляла таблицу с любым именем.
...
Рейтинг: 0 / 0
01.12.2020, 14:00
    #40023631
ldfanate
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
VBA Найти/удалить объект Access, содержащий любые символы
напомнило древний фидошный письмо, которое "опасный вирус-троян" рассылал, предлагая себя разослать дальше и стереть всё с диска C:
...
Рейтинг: 0 / 0
01.12.2020, 14:09
    #40023633
Лысёк
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
VBA Найти/удалить объект Access, содержащий любые символы
ldfanate
напомнило древний фидошный письмо, которое "опасный вирус-троян" рассылал, предлагая себя разослать дальше и стереть всё с диска C:

Нет. Просто информация составляет тайну, и не должна быть доступна посторонним, если к ним попадет файл базы. Версия с паролем не канает, но это другая история.
...
Рейтинг: 0 / 0
01.12.2020, 14:11
    #40023636
ROI
ROI
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
VBA Найти/удалить объект Access, содержащий любые символы
Лысёк
ldfanate
напомнило древний фидошный письмо, которое "опасный вирус-троян" рассылал, предлагая себя разослать дальше и стереть всё с диска C:

Нет. Просто информация составляет тайну, и не должна быть доступна посторонним, если к ним попадет файл базы. Версия с паролем не канает, но это другая история.

Тады надо внедрять защиту от "шифта".
Можно просто присоединить (от этого тоже надо защищать).
Судя по вашему опыту(вы сможете защитить, только от себя)
...
Рейтинг: 0 / 0
01.12.2020, 14:56
    #40023649
sdku
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
VBA Найти/удалить объект Access, содержащий любые символы
ROI

....Судя по вашему опыту(вы сможете защитить, только от себя)
Не факт-даже это может не удастся
Защита информации,пожалуй,один из самых сложных вопросов-решение его очень творческий процесс и удаление объектов не есть лучший вариант. Для начала просто покопайте в сторону разграничения прав, защиты от Shift(уже посоветовали),запрет копирования и т.д и т.п
А если уж речь о какой-то "сверхсекретности" ACCESS не самый лучший(хотя и не плохой, но для надежной защиты он должен работать в связке с системой)инструмент.
...
Рейтинг: 0 / 0
01.12.2020, 16:09
    #40023680
Лысёк
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
VBA Найти/удалить объект Access, содержащий любые символы
Хотел через цикл, но ругается.
Код: vbnet
1.
2.
3.
4.
5.
6.
Public Sub DropTab()
Dim tbl As TableDef
For Each tbl In CurrentDb.TableDefs
CurrentDb.TableDefs.Delete tbl.name
Next
End Sub


"У вас недостаточно разрешений для использования объекта "MSysACEs". Необходимые разрешения должны быть предоставлены системным администратором или пользователем, создавшим этот объект".
Походу невозможно. Нигде нету решения.
...
Рейтинг: 0 / 0
01.12.2020, 16:46
    #40023698
Панург
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
VBA Найти/удалить объект Access, содержащий любые символы
Лысёк
Просто информация составляет тайну, и не должна быть доступна посторонним, если к ним попадет файл базы.
смишно...

Lasciate ogni speranza, voi ch’entrate (с)
...
Рейтинг: 0 / 0
01.12.2020, 16:48
    #40023701
Панург
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
VBA Найти/удалить объект Access, содержащий любые символы
Лысёк, Шифрование базы данных с помощью пароля
я этим лично никогда не занимался...
...
Рейтинг: 0 / 0
01.12.2020, 16:50
    #40023702
Панург
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
VBA Найти/удалить объект Access, содержащий любые символы
Лысёк
Походу невозможно. Нигде нету решения.
а зачем ты удаляешь системные таблицы?
...
Рейтинг: 0 / 0
01.12.2020, 17:01
    #40023707
Лысёк
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
VBA Найти/удалить объект Access, содержащий любые символы
Панург
Лысёк
Походу невозможно. Нигде нету решения.
а зачем ты удаляешь системные таблицы?

прописывал условие, чтобы удалять только если имя таблицы <> имя системной таблицы, но результата не даёт, пишет тоже самое.
...
Рейтинг: 0 / 0
01.12.2020, 17:05
    #40023710
Лысёк
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
VBA Найти/удалить объект Access, содержащий любые символы
Панург
Лысёк, Шифрование базы данных с помощью пароля
я этим лично никогда не занимался...

вариант с паролем отпадает, объяснять долго.
...
Рейтинг: 0 / 0
01.12.2020, 17:25
    #40023714
Лысёк
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
VBA Найти/удалить объект Access, содержащий любые символы
Уря! Накопал рабочий вариант
Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
Public Sub DropTab()
Dim tbl As TableDef
For Each tbl In CurrentDb.TableDefs
Debug.Print tbl.Name
If Left(tbl.Name, 1) = "Т" Then
CurrentDb.TableDefs.Delete tbl.Name
End If
Next
End Sub


Удаляет все таблицы, начинающиеся с буквы Т. Большего мне не нужно. Всем спасибо, мира и добра.
...
Рейтинг: 0 / 0
01.12.2020, 18:48
    #40023731
Панург
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
VBA Найти/удалить объект Access, содержащий любые символы
Лысёк
Удаляет все таблицы, начинающиеся с буквы Т. Большего мне не нужно. Всем спасибо, мира и добра.
хрень, закладываться на полного нуля это то ещё решение.
...
Рейтинг: 0 / 0
01.12.2020, 18:59
    #40023736
Панург
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
VBA Найти/удалить объект Access, содержащий любые символы
Лысёк
прописывал условие, чтобы удалять только если имя таблицы <> имя системной таблицы, но результата не даёт, пишет тоже самое.


Лысёк
Код: vbnet
1.
If (tbl.Attributes and dbSystemObject)=0 Then

...
Рейтинг: 0 / 0
01.12.2020, 19:01
    #40023737
Панург
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
VBA Найти/удалить объект Access, содержащий любые символы
Лысёк
Код: vbnet
1.
For Each tbl In CurrentDb.TableDefs

и коллекцию в таких случаях лучше с конца перебирать...
...
Рейтинг: 0 / 0
01.12.2020, 20:39
    #40023767
bubucha
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
VBA Найти/удалить объект Access, содержащий любые символы
Тс, читай выше между строк - что бы получить доступ к "секретным таблицам", не обязательно открывать сам файл, а коль сам файл не открывается, то весь твой деструктивный код по удалению таблиц идет лесом...
зы с другой стороны, хозяин-барин
...
Рейтинг: 0 / 0
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / VBA Найти/удалить объект Access, содержащий любые символы / 17 сообщений из 17, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]