Страницы: 1
RSS
SQL в Power Pivot, Синтаксис
 
Добрый день!

При работе в Power Pivot хочу вытянуть данные из Access. Предлагается 2 варианта, вытянуть всю таблицу или через SQL-запрос. Лопатил несколько часов интернет, но так и не нашел, как пишутся там запросы. Единственное, что нашел, так это странный запрос из SQL-server.

Если у кого есть, выложите сюда хотя бы простенький рабочий запрос. Что-нибудь вроде Select [Продажи].[Фамилия] from [Продажи] Where  [Цена]> 10
 
Этим запросом тянул данные из Access.
Код
Sub iDateBaseTableValue()
    Dim iConnection As Object
    Dim irecordset As Object
    Dim iPath$, iSelect$, Cnct$, i%, lrow&
    On Error Resume Next
    Set iConnection = CreateObject("ADODB.Connection")
   Set irecordset = CreateObject("ADODB.Recordset")
   
    ' путь к базе данных
    iPath = ThisWorkbook.Path & "\" & "Имя БД"
    
    ' данные для подключения к БД
    Cnct = Join(Array("Provider=Microsoft.ACE.OLEDB.12.0", "Data Source=" & iPath), ";")
    'подключение к БД
    iConnection.ConnectionString = Cnct
    iConnection.Open
    
    With irecordset
        ' Запрос SQL
      iSelect = "Select * From [Имя таблицы] Where  'Условие'"
        .Open iSelect, iConnection
        For i = 1 To .Fields.Count
            Лист1.Cells(1, i).Value = .Fields(i - 1).Name
        Next i
    End With
   Activesheet.Range("a2").CopyFromRecordset irecordset
End Sub
Изменено: Nordheim - 16.05.2018 08:45:20
"Все гениальное просто, а все простое гениально!!!"
 
Простейший запрос выводящий все данные из таблицы:
Код
SELECT * FROM [ИмяТаблицыВАксесс]  

То, что Вы написали тоже может работать в случае если все имена валидные

Изменено: Gauss - 16.05.2018 08:41:57
 
Nordheim, Мне не в VBA, а в Power Pivot надо.
Gauss, странно, но работает.
Вчера весь вечер пытался написать - выдавал ошибку. А сейчас - все работает :(
Спасибо
 
Цитата
CrazyRabbit написал:
Nordheim , Мне не в VBA, а в Power Pivot надо.
SQL запросы вроде как везде одинаково пишутся , что в VBA, что в Power Pivot.
в приведенном коде вроде как есть запрос
Код
iSelect = "Select * From [Имя таблицы] Where  'Условие'"
"Все гениальное просто, а все простое гениально!!!"
 
Доброе время суток
Цитата
CrazyRabbit написал:
А сейчас - все работает
Тогда стройте запросы непосредственно в Access, а потом, переключившись в режим SQL, просто скопируйте получившийся код SQL.
 
Андрей VG, Пробовал - вчера не пропускало. Возможно Pivot у меня вчера глючил
Страницы: 1
Читают тему
Наверх