Vba база данных: Метод Application.OpenCurrentDatabase (Access) | Microsoft Learn

Метод Application.OpenCurrentDatabase (Access) | Microsoft Learn





Twitter




LinkedIn




Facebook




Адрес электронной почты










  • Статья



Используйте метод OpenCurrentDatabase , чтобы открыть существующую базу данных Microsoft Access в качестве текущей базы данных.

Синтаксис

expression. OpenCurrentDatabase (filepath, Exclusive, bstrPassword)

выражение: переменная, представляющая объект Application.

Параметры

ИмяОбязательный или необязательныйТип данныхОписание
FilepathОбязательныйStringИмя существующего файла базы данных, включая имя пути и расширение имени файла.
ЭксклюзивныеНеобязательныйЛогическийУказывает, нужно ли открывать базу данных в монопольном режиме. Значение по умолчанию — False, указывающее, что база данных должна быть открыта в общем режиме.
bstrPasswordНеобязательныйStringПароль для открытия указанной базы данных.

Возвращаемое значение

Отсутствует

Используйте этот метод, чтобы открыть базу данных из другого приложения, которое управляет Microsoft Access с помощью службы автоматизации, ранее называемой OLE-автоматизацией. Например, можно использовать метод OpenCurrentDatabase из Microsoft Excel, чтобы открыть пример базы данных Northwind.mdb в окне Access. После создания экземпляра Access из другого приложения необходимо также создать новую базу данных или указать конкретную базу данных для открытия. Эта база данных откроется в окне Access.

Если вы уже открыли базу данных и хотите открыть другую базу данных в окне Доступа, можно использовать метод CloseCurrentDatabase , чтобы закрыть первую базу данных перед открытием другой.

Примечание.

Используйте метод OpenAccessProject , чтобы открыть существующий проект Access (ADP) в качестве текущей базы данных.

Примечание.

Не путайте метод OpenCurrentDatabaseс методом Open объектов данных ActiveX (ADO) или методом OpenDatabase объекта доступа к данным (DAO). Метод OpenCurrentDatabase открывает базу данных в окне Access. Метод DAO OpenDatabase возвращает переменную объекта Database , которая представляет определенную базу данных, но фактически не открывает ее в окне Access.

Пример

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

Этот код можно ввести в модуле Visual Basic в любом приложении, которое может выступать в качестве com-компонента. Например, можно выполнить следующий код из Excel, Visual Basic или Access.

Когда переменная, указывающая на объект Application , выходит за пределы области, экземпляр Access, который она представляет, также закрывается. Поэтому эту переменную следует объявить на уровне модуля.

' Include the following in Declarations section of module. 
Dim appAccess As Access.Application 
 
Sub DisplayForm() 
 
 Dim strDB as String 
 
 ' Initialize string to database path. 
 Const strConPathToSamples = "C:\Program " _ 
 & "Files\Microsoft Office\Office11\Samples\" 
 
 strDB = strConPathToSamples & "Northwind. mdb" 
 ' Create new instance of Microsoft Access. 
 Set appAccess = _ 
 CreateObject("Access.Application") 
 ' Open database in Microsoft Access window. 
 appAccess.OpenCurrentDatabase strDB 
 ' Open Orders form. 
 appAccess.DoCmd.OpenForm "Orders" 
End Sub

Поддержка и обратная связь

Есть вопросы или отзывы, касающиеся Office VBA или этой статьи? Руководство по другим способам получения поддержки и отправки отзывов см. в статье Поддержка Office VBA и обратная связь.






Подключение к базе данных SQL с помощью скрипта VBA — Dynamics GP





Twitter




LinkedIn




Facebook




Адрес электронной почты










  • Статья



В этой статье описывается, как использовать скрипт VBA для подключения к базе данных Microsoft SQL, используемой Microsoft Dynamics GP.

Применимо к: Microsoft Dynamics GP
Исходный номер базы знаний: 892700

Введение

В этой статье описывается, как использовать скрипт Microsoft Visual Basic для приложений (VBA) для подключения к базе данных Microsoft SQL, используемой Microsoft Dynamics GP 9.0 и Microsoft Business Solutions — Great Plains 8.0.

Следующий пример сценария VBA можно Description_AfterGotFocus использовать для события в окне обслуживания учетной записи Групповой политики Microsoft Dynamics. Этот сценарий подключается к примеру базы данных GP Microsoft Dynamics GP TWO и выполняет вход от имени системного администратора с паролем. После установки подключения скрипт создает набор записей данных, хранящихся в главной таблице индекса учетной записи GL00105. Затем скрипт вернет значение индекса учетной записи в поле User-Defined1 в окне обслуживания учетной записи. Скрипт возвращает это значение при вводе новой учетной записи или использовании кнопки поиска учетной записи .

Чтобы использовать пример скрипта, выполните следующие действия.

  1. Откройте окно обслуживания учетной записи в Microsoft Dynamics GP.

  2. В меню «Сервис » щелкните «Настройка» и выберите команду «Добавить текущее окно в Visual Basic».

  3. В меню «Сервис» щелкните «Настройка«, выберите пункт «Добавить поля в Visual Basic«, а затем выберите поля «Номер учетной записи», «Описание» и «Определяемое пользователем значение 1«.

  4. В меню «Сервис » нажмите кнопку «Настроить» и выберите редактор Visual Basic.

  5. В редакторе Visual Basic разверните узел «Большие обычные объекты», а затем дважды щелкните AccountMaintenance , чтобы открыть окно кода обслуживания учетной записи.

  6. Скопируйте следующий код и вставьте его в окно кода обслуживания учетной записи.

    Private Sub Description_AfterGotFocus()
    Dim objRec
    Dim objConn
    Dim cmdString
    Set objRec = CreateObject("ADODB.Recordset")
    Set objConn = CreateObject("ADODB.Connection")
    objConn.ConnectionString = "Provider=MSDASQL;DSN=GreatPlains;Initial Catalog=TWO;User Id=sa;Password=password"
    objConn.Open
    cmdString = "Select ACTINDX from GL00105 where (ACTNUMST='" + Account + "')"
    Set objRec = objConn.Execute(cmdString)
    If objRec.EOF = True Then
    AccountMaintenance.UserDefined1 = ""
    Else
    AccountMaintenance.UserDefined1 = objRec!ACTINDX
    End If
    objConn.Close
    End Sub
    

Вы также можете использовать файл RetrieveGlobals_80.dll microsoft Business Solutions — Great Plains 8.0, чтобы получить те же сведения, которые извлекает этот пример скрипта. Сведения о том, как получить соответствующий .dll, см. в разделе «Прекращение использования клиентского ресурса MBS».

Файл сведений включается в каждую версию . dll файла. Файл сведений описывает объявление переменных. Например, можно объявить переменные в коде, а затем использовать переменные в строке подключения.






Использование сценария VBA для подключения к базе данных SQL — Dynamics GP

Редактировать

Твиттер

LinkedIn

Фейсбук

Электронная почта

  • Статья

В этой статье описывается, как использовать сценарий VBA для подключения к базе данных Microsoft SQL, используемой Microsoft Dynamics GP.

Применяется к:   Microsoft Dynamics GP
Исходный номер базы знаний:   892700

Введение

В этой статье описывается, как использовать сценарий Microsoft Visual Basic для приложений (VBA) для подключения к базе данных Microsoft SQL, используемой Microsoft Dynamics GP 9. 0 и Microsoft Business Solutions. Великие равнины 8.0.

Следующий пример сценария VBA можно использовать для события Description_AfterGotFocus в окне обслуживания учетной записи Microsoft Dynamics GP. Этот сценарий подключится к образцу базы данных TWO Microsoft Dynamics GP и войдет в систему как системный администратор с паролем. После установления соединения сценарий создает набор данных, который хранится в главной таблице индекса учетной записи GL00105. Затем скрипт вернет значение индекса учетной записи в User-Defined1 поле в окне Account Maintenance. Сценарий возвращает это значение, когда вы вводите новую учетную запись или используете кнопку Поиск учетной записи .

Чтобы использовать пример сценария, выполните следующие действия:

  1. Откройте окно Account Maintenance в Microsoft Dynamics GP.

  2. В меню Инструменты щелкните Настроить , а затем щелкните Добавить текущее окно в Visual Basic .

  3. В меню Инструменты щелкните Настроить , щелкните Добавить поля в Visual Basic , а затем щелкните поле Номер счета , поле Описание и поле Определяемое пользователем 1 .

  4. В меню Инструменты выберите Настройка , а затем щелкните Редактор Visual Basic .

  5. В редакторе Visual Basic разверните Great Plains Objects и дважды щелкните AccountMaintenance , чтобы открыть окно кода Account Maintenance .

  6. Скопируйте следующий код и вставьте его в окно кода Account Maintenance .

     Частная подпрограмма Description_AfterGotFocus()
    Тусклый objRec
    Dim objConn
    Dim cmdString
    Установите objRec = CreateObject("ADODB.Recordset")
    Установите objConn = CreateObject("ADODB.Connection")
    objConn. ConnectionString = "Provider=MSDASQL;DSN=GreatPlains;Исходный каталог=ДВА;Идентификатор пользователя=sa;Пароль=пароль"
    objConn.Open
    cmdString = "Выберите ACTINDX из GL00105, где (ACTNUMST='" + Учетная запись + "')"
    Установить objRec = objConn.Execute(cmdString)
    Если objRec.EOF = Истина Тогда
    AccountMaintenance.UserDefined1 = ""
    Еще
    AccountMaintenance.UserDefined1 = objRec!ACTINDX
    Конец, если
    objConn.Close
    Конец сабвуфера
     

Вы также можете использовать файл RetrieveGlobals_80.dll для Microsoft Business Solutions — Great Plains 8.0, чтобы получить ту же информацию, что и этот пример сценария. Чтобы получить соответствующий файл .dll, см. раздел MBS CustomerSource Retirement.

Файл Readme включен в каждую версию DLL-файла. Файл Readme описывает, как объявить переменные. Например, вы можете объявить переменные в своем коде, а затем использовать переменные в строке подключения.

Как создать простую базу данных в Excel VBA

В этой статье я покажу вам, как создать простую базу данных с помощью VBA в Excel.


Скачать практическую рабочую тетрадь

Обзор базы данных в Excel VBA

Как создать базу данных с помощью Excel VBA

То, что нужно запомнить

Заключение

Статьи по Теме

Загрузить рабочую тетрадь

Загрузите эту практическую рабочую тетрадь, чтобы тренироваться, пока вы читаете эту статью.


Обзор базы данных в Excel VBA

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

Пусть у нас есть набор данных с именами, датами вступления, и зарплаты некоторых сотрудников компании на листе Excel.

Теперь мы перенесем этот набор данных в базу данных. Мы разработаем процесс, который будет автоматически добавлять или удалять любую строку из набора данных.

Чтобы увидеть больше иллюстраций, посмотрите на изображение ниже. Здесь мы добавили кнопки 2 вместе с 3 выделенными пустыми ячейками ( G4, G5 и G6 ).

Для добавления новой строки в базу данных необходимо заполнить пустые ячейки и нажать на кнопку Добавить данные .

Например, мы заполнили Имя сотрудника как Маркус Норт, Дата приема на работу от 11.11.2011 и Заработная плата как 40 000 $.

Теперь, если вы нажмете кнопку Добавить данные , вы обнаружите, что данные автоматически добавляются в новую строку в базе данных.

Теперь, если нажать кнопку Добавить данные , оставив одну или несколько ячеек пустыми, появится окно ввода с просьбой ввести данные.

Например, если вы оставите поле Дата присоединения пустым, появится окно ввода с предложением ввести Дата присоединения .

Если оставить более одной пустой ячейки, появится более одного поля ввода.

С другой стороны, если вы заполните одну или несколько пустых ячеек между G3, G4, и G5 и нажмете кнопку Удалить данные , строка, содержащая эти данные, будет удалена из базы данных.

Например, мы заполнили Имя сотрудника как Фрэнк Оруэлл и Зарплата как 36 000 долларов США (выделено в базе данных).

Теперь, если вы нажмете Удалить данные , строки, содержащие эти данные, будут удалены.

Теперь, если вы нажмете Удалить данные , содержащие несуществующие данные, появится окно сообщения, информирующее вас об этом.

Например, если вы введете 50 000 в качестве Зарплаты и нажмете Удалить данные , вы получите такое сообщение.

Потому что нет ряда с зарплатой 50000.

Подробнее: Как создать базу данных сотрудников в Excel (с помощью простых шагов)


Аналогичные показания

  • Как создать базу данных учащихся в Excel (с помощью простых шагов)
  • Как создать базу данных, которая автоматически обновляется в Excel
  • Как использовать функции базы данных в Excel (с примерами)

Как создать базу данных с помощью Excel VBA

Надеюсь, мы поняли, чего мы собираемся достичь сегодня. Теперь я покажу вам, как мы можем добиться этого, используя VBA . Для вашего удобства я покажу вам пошаговый процесс выполнения этого.

⧪ Шаг 1. Открытие окна Visual Basic

Нажмите ALT + F8 на клавиатуре. Откроется окно Visual Basic .

⧪ Шаг 2: Вставка новых модулей

Перейдите к опции Вставка > Модуль на панели инструментов. Нажмите на модуль . Будет вставлен новый модуль с именем Module1 (или любым другим, в зависимости от вашей прошлой истории).

Повторите процедуру еще раз. Будет вставлен еще один новый модуль с именем Module2 .

⧪ Шаг 3: Ввод первого кода VBA

Скопируйте и вставьте следующие Код VBA в Module1 .

⧭ Код VBA:

 Подпрограмма Add_Data()
Установить базу данных = диапазон ("B2: D12")
Установите New_Input = Диапазон («G3: G5»)
Last_Row = База данных.Строки.Количество + 1
Пока Database.Cells(Last_Row, 1) <> ""
Последняя_строка = Последняя_строка + 1
Венд
Для i = 1 To New_Input.Rows.Count
Если New_Input.Cells(i, 1) <> "" Тогда
Новые_Данные = Новые_Входные.Ячейки(i, 1)
Database.Cells(Last_Row, i) = New_Data
Еще
New_Input.Cells(i, 1).Выбрать
New_Data = InputBox("Введите " + New_Input.Cells(i, 0) + ":")
Database.Cells(Last_Row, i) = New_Data
Конец, если
Далее я
Конец суб 

⧭ Примечания:

  • Этот код создает макрос с именем Add_Data .
  • Первые 2 строки кода устанавливают диапазон базы данных и новый ввод. Наша база данных состоит из диапазона B2:B12 , а новый ввод состоит из диапазона G3:G5 . Вы меняете его в соответствии с вашими потребностями.

⧪ Шаг 4: Ввод второго кода VBA

Аналогично введите этот Код VBA в Module2 .

⧭ Код VBA:

 Sub Delete_Data()
Установить базу данных = диапазон ("B2: D12")
Установите New_Input = Диапазон («G3: G5»)
Удалено = 0
Для i = 1 To New_Input.Rows.Count
Если New_Input.Cells(i, 1) <> "" Тогда
Для j = Database.Rows.Count To 1 Шаг -1
Если New_Input.Cells(i, 1) = Database.Cells(j, i) Тогда
Для k = 1 в Database.Columns.Count
База данных.Ячейки(j, k).Удалить
Следующий k
Удалено = Удалено + 1
Конец, если
Следующий j
Если Удалено = 0 Тогда
Заголовок = New_Input.Cells(i, 0)
Данные = New_Input.Cells(i, 1)
Если VarType(Данные) <> 8 Тогда
Данные = СТР(Данные)
Конец, если
MsgBox "Нет строки с " + Заголовок + " " + Данные + ". "
Конец, если
Удалено = 0
Конец, если
Далее я
Конец суб 

⧭ Примечания:

  • Этот код создает макрос с именем Delete_Data .
  • Здесь также первые 2 строки кода устанавливают диапазон базы данных и новый ввод. Наша база данных состоит из диапазона B2:B12 , а новый ввод состоит из диапазона G3:G5 . Вы меняете его в соответствии с вашими потребностями.

⧪ Шаг 5: Добавление кнопок на рабочий лист

Вернитесь к рабочему листу и перейдите к опции Разработчик > Вставить на панели инструментов Excel. Нажмите Вставьте . Затем выберите Button из Form Controls .

[Нажмите здесь, чтобы узнать , как отобразить вкладку «Разработчик» в Excel , если она не отображается].

Затем перетащите кнопку в нужное место на рабочем листе и поместите ее там. Дважды щелкните по нему и переименуйте его в Добавить данные (или как угодно).

Аналогичным образом перетащите другую кнопку и переименуйте ее в Удалить данные (или как угодно).

⧪ Шаг 6: Назначение макросов кнопкам

Щелкните правой кнопкой мыши кнопку Добавить данные . Затем выберите Назначить макрос .

Откроется диалоговое окно Назначить макрос . В поле Macro Name введите Add_Data .

Аналогичным образом назначьте Макрос Delete_Data на кнопку Удалить данные .

⧪ Шаг 7: Наблюдение за результатом

Теперь кнопки готовы к использованию. Заполните пустые ячейки и нажмите на кнопки. Вы получите желаемый результат, как указано в разделе обзора.

Подробнее: Как создать базу данных с формой в Excel


Что нужно помнить

Здесь я только что добавил кнопки 2 в базу данных, чтобы добавить или удалить только одну или несколько строк из базы данных.