Надстройка Excel для отображения данных из (My) базы данных SQL

есть ли простой способ импортировать данные из источника данных mysql / odbc в электронную таблицу Excel?

Пользователь должен иметь возможность выбирать некоторые значения из раскрывающихся списков (например, диапазон дат, имя ветки и т. д.), А значения из раскрывающегося списка следует использовать для заполнения (подготовленных) операторов SQL. Результаты должны быть отображены в файле Excel.

В идеале должен быть пункт меню «сохранить снимок», который преобразует динамический файл excel (с сохраненными операторами sql) в статический файл excel, тем самым уменьшая доступ внутренних компонентов (например, sql) к внешним ресурсам.

Спасибо

ReactJs | Supabase | Добавление данных в базу данных
ReactJs | Supabase | Добавление данных в базу данных
Это и есть ваш редактор таблиц в supabase.👇
Понимание Python и переход к SQL
Понимание Python и переход к SQL
Перед нами лабораторная работа по BloodOath:
1
0
1 278
4

Ответы 4

Вы можете загрузить Драйвер ODBC для MySQL, создать источник данных и использовать MS Query для создания пользовательского SQL-запроса, который можно добавить в Excel через меню «Данные».

Вот пример:

Set cn = CreateObject("ADODB.Connection")
Set rs = CreateObject("ADODB.Recordset")

strCon = "Driver = {MySQL ODBC 3.51 Driver};Server=localhost;Database=MyDB;" _
& "User=UName;Password=PWord;Option=3;"


cn.Open strCon

strSQL = "SELECT * FROM Members"

rs.Open strSQL, cn

Worksheets(3).Cells(2, 1).CopyFromRecordset rs

Этот метод должен быть быстрее, чем CopyFromRecordset. Конечно, вы должны убедиться, что у вас установлен драйвер MySQL ODBC 5.1 ...

With AWorksheet.QueryTables.Add( _
   Connection: = "ODBC;Driver=MySQL ODBC 5.1 Driver;Port=3306;Server=mysqlservername;Database=snort;User=username;Password=password;Option=3;"
   Destination:=AWorksheet.Range(AWorksheet.Cells(1, 1), AWorksheet.Cells(1, 15)) _
  )

   .CommandText = "SELECT Something FROM Somewhere"
   .Name = "Name"
   .FieldNames = True
   .RowNumbers = False
   .FillAdjacentFormulas = False
   .PreserveFormatting = True
   .RefreshOnFileOpen = False
   .BackgroundQuery = True
   .RefreshStyle = xlOverwriteCells
   .SavePassword = False
   .SaveData = True
   .AdjustColumnWidth = False
   .RefreshPeriod = 0
   .PreserveColumnInfo = True
   .Refresh BackgroundQuery:=False
   .Delete
End With

Другие вопросы по теме