Очень простая проблема: у меня есть открытый Sub (в модуле), который я хочу вызвать из кнопки в форме. Имя функции, которую я хочу вызвать из модуля, - GenerateKML.Вызов публичного суба из формы в MS Access
Я прочитал этот пост:
How do I call a VBA Function into a Sub Procedure
И попробовал все из предложенных методов, ни один из которых работают для меня. Может возникнуть проблема с моим кодом, но когда я нахожусь в режиме просмотра кода (редактируя модуль) и нажимаю кнопку «играть», код работает правильно (создается файл KML).
Если я использую второй метод, предложенный (вызов подпрограммы в модуле из формы), я получаю сообщение об ошибке:
Compile Error
Прогнозный переменной или процедуры, не модуль
И если я использую третий метод (вызов подпрограммы из формы без использования процедуры обработки события) я получаю это:
Выражение On Click, введенное как свойство события ...: Введенное выражение имеет имя функции, которое [мое имя DB] не может найти.
Поэтому я подозреваю, что что-то не так с тем, как я называю код, который я хочу запустить.
Это, как начинается код моего модуля:
Option Compare Database
Public Sub GenerateKML()
'
' GenerateKML Macro
' Macro recorded 26/09/2006 by simon_a
' Adapted and imported to Access by SAA
' 03 aug 2007 - v3.0 - 2007 08 06 19 24
'
' DECLARE VARIABLES
Dim filename As String
Dim docname As String
Большое спасибо Lil'Monkey - это сделало это. –