Форум программистов, компьютерный форум, киберфорум
Microsoft Access
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.86/7: Рейтинг темы: голосов - 7, средняя оценка - 4.86
3 / 3 / 0
Регистрация: 16.10.2014
Сообщений: 148
1

И все-таки исполнение команды из текстового файла

27.07.2016, 22:16. Показов 1405. Ответов 6
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Доброго времени суток уважаемые форумчане! Знаю что похожий вопрос задавал, но поскольку было предложено альтернативное решение отказался от него. А некоторые задачи все-таки хотелось бы решить именно благодаря такой методике...
Имеется текстовый файл с инструкцией vba, как можно все-таки обратиться к этому текстовому файлу и запустить эту инструкцию в приложении?
Спасибо!
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
27.07.2016, 22:16
Ответы с готовыми решениями:

Исполнение команды в винде
Кто-нибудь делал екзешник для винды, который запускает исполнение команды: java -jar...

Исполнение команды в BAT
День добрый! Прошу подсказать в каком направлении копать с моей проблемой... Задача: Выключение...

Пауза на исполнение команды
Добрый день всем! Кто поможет решить такую задачу с 3 секундной паузой меж строк кода: ...

Обработка текстового файла с информацией, полученной с помощью команды SYSTEMINFO
Есть файлик Nikolay.txt .. полученый путем bat файла : @echo off chcp 866 >nul systeminfo /fo...

6
Эксперт MS Access
2833 / 1375 / 215
Регистрация: 13.05.2011
Сообщений: 4,217
27.07.2016, 23:19 2
Цитата Сообщение от orange3100 Посмотреть сообщение
Имеется текстовый файл с инструкцией vba, как можно все-таки обратиться к этому текстовому файлу и запустить эту инструкцию в приложении?
В смысле инструкция просто набрана (например в ВОРДе) и ее при необходимости нужно открыть и прочитать? Можно сделать поле с Гиперссылкой, если так. Или поясните на примере.
0
Эксперт MS Access
26806 / 14485 / 3192
Регистрация: 28.04.2012
Сообщений: 15,782
27.07.2016, 23:40 3
Лучший ответ Сообщение было отмечено alvk как решение

Решение

Добавить текстовый файл в проект как модуль пойдет?
Visual Basic
1
2
3
4
5
6
7
8
9
10
DoCmd.RunCommand acCmdNewObjectModule   'создать новый модуль
DoCmd.Close acModule, "ИмяМодуля", acSaveYes  'сохранить с новым именем
DoCmd.OpenModule "ИмяМодуля"            'открыть модуль
Set mdl = Modules("ИмяМодуля")
mdl.AddFromFile "путь\ИмяФайла"         'записать в модуль содержание текстового файла
DoCmd.Close acModule, "ИмяМодуля", acSaveYes
Call ПроцедураИзИмпортированногоФайла() 'выполнить процедуру
 
'Если нужно, то после выполнения модуль сразу уничтожается
DoCmd.DeleteObject acModule, "ИмяМодуля"
Еще вариант - считать текстовый файл выделить из него нужную процедуру и пользуясь методом AddFromString, записать ее в имеющийся (или новый) модуль и выполнить.
7
Эксперт MS Access
7398 / 4535 / 295
Регистрация: 12.08.2011
Сообщений: 14,023
28.07.2016, 05:57 4
Вот и первый вирус для Акцесса.
1
3 / 3 / 0
Регистрация: 16.10.2014
Сообщений: 148
28.07.2016, 12:12  [ТС] 5
Цитата Сообщение от mobile Посмотреть сообщение
Еще вариант - считать текстовый файл выделить из него нужную процедуру
а вот этот примерчик можно
0
Эксперт MS Access
26806 / 14485 / 3192
Регистрация: 28.04.2012
Сообщений: 15,782
28.07.2016, 12:29 6
Желательно иметь примерчик bas-файла. Вариантов считывания и выполнения множество, делать на все случаи не хочется. Вложите bas-файл, укажите процедуру или строку, которую надо выполнить. Тогда можно будет попробовать соорудить работающий вариант.
0
784 / 466 / 79
Регистрация: 18.05.2016
Сообщений: 1,244
Записей в блоге: 4
29.07.2016, 11:22 7
как-то так
VB.NET
1
2
3
4
5
6
7
8
9
10
11
12
13
Sub AddVBACode()
Open "c:\temp\1.bas" For Input As #1
While Not EOF(1)
    Input #1, strLine
    strCode = strCode & vbCrLf & strLine
Wend
Close #1
Set VBComp = Access.Application.VBE.VBProjects(1).VBComponents("module1")
With VBComp.CodeModule
    .InsertLines .CountOfLines + 1, strCode
End With
Set VBComp = Nothing
End Sub
научил плохому

Добавлено через 7 минут
Вот только это работает, как добавка содержимого файла в модуль. Если процедура с таким именем уже существует, то весь проект перестанет работать из-за ошибки компиляции. Если такую инъекцию необходимо делать регулярно для выполнения каких-нибудь обновлений базы, то это надо городить специальный модуль для таких задач, а потом удалять из проекта
2
29.07.2016, 11:22
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
29.07.2016, 11:22
Помогаю со студенческими работами здесь

Выполнение команды, над удаленными компьютерами, взятых из текстового файла
Добрый день. Имеется команда в bat файле: del /f /a /q "\\pc\C$\Windows\ITSupport.exe" команда...

Исполнение команды в cmd из программы на C#
Всем привет! Возникла проблема с запуском команды в открываемой командной строке. Если я просто...

Как вставить выводимый в результате выполнения команды DIR текст в заданную строку текстового файла?
Господа! ломаю голову, не могу перенести текст. Есть перечень имен файлов создаваемый командой...

Из текстового файла создать две очереди: перенести в одну из них все знаки препинания, а в другую - все остальное
На основе информации из текстового файла создайте две очереди, перенеся в одну из них все знаки...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru