Excel Forum - Porady, Pomoc,  Excel Help, Excel FAQ Strona Główna
 FAQ  RegulaminRegulamin  Szukaj   Użytkownicy   Grupy   Rejestracja   Profil   Twoje wiadomości   Zaloguj 


Poprzedni temat «» Następny temat
Przesunięty przez: Zefirek
15-02-2019, 10:59
Power query i wybieranie źródła danych
Autor Wiadomość
mr_petrus
świeżak


Pomógł: 1 raz
Posty: 3
Wysłany: 15-02-2019, 10:41   Power query i wybieranie źródła danych

Cześć wszystkim! Chciałbym stworzyć excel template, który przy uruchomieniu pyta o wskazanie pliku csv, który ma posłużyć za źródło danych. Udało mi się coś takiego zrobić na starszej wersji excela bez Power Query. Teraz robię coś takiego używając Power Query i mam zdefiniowane połączenie. Nie potrafię wprowadzić takich zmian, żeby przy uruchomieniu excel najpierw prosił o podanie ścieżki, a następnie odświeżał dane według stworzonych zapytań. W załączeniu poglądowo, screen z tego, jak to wygląda teraz (1) i jak chciałbym, żeby wyglądało (2). Proszę o pomoc.

1.PNG
Otwieranie excel template z połączeniem przy użyciu PQ
Plik ściągnięto 135 raz(y) 9.39 KB

2.PNG
Otwieranie excel template stworzonego przy użyciu starego kreatora połączeń
Plik ściągnięto 9 raz(y) 34.97 KB

ID posta: 362643 Skopiuj do schowka
 
 
nunus67 
ExcelSpec


Pomógł: 172 razy
Posty: 505
Wysłany: 16-02-2019, 06:42   

nagraj sobie makro w czasie pobierania pliku CSV, a potem zmodyfikuj kod (który kiedyś tam używałem) pod własne potrzeby:
Kod:
Sub pobierzCSV()
Dim FName As Variant
Dim w As Long
Dim gdzie As Range
Dim nazwa As String
    Application.ScreenUpdating = False
w = WorksheetFunction.CountA(Range("A:A"))
Set gdzie = Range("A" & w + 1)
nazwa = "CSV"
FName = Application.GetOpenFilename( _
FileFilter:="pliki csv,*.csv*", _
Title:="Wybierz plik csv do otwarcia", _
MultiSelect:=False)
'Krok 1: Jeżeli wybrano plik - otwórz go!
If FName <> False Then
    With ActiveSheet.QueryTables.Add(Connection:= _
        "TEXT;" & FName, Destination:=gdzie)
        .Name = nazwa
        .FieldNames = True
        .RowNumbers = False
        .FillAdjacentFormulas = False
        .PreserveFormatting = False
        .RefreshOnFileOpen = False
        .RefreshStyle = False
        .SavePassword = False
        .SaveData = True
        .AdjustColumnWidth = True
        .RefreshPeriod = 0
        .TextFilePromptOnRefresh = False
        .TextFilePlatform = 1250
        .TextFileStartRow = 1
        .TextFileParseType = xlDelimited
        .TextFileTextQualifier = xlTextQualifierDoubleQuote
        .TextFileConsecutiveDelimiter = False
        .TextFileTabDelimiter = True
        .TextFileSemicolonDelimiter = False
        .TextFileCommaDelimiter = True
        .TextFileSpaceDelimiter = False
        .TextFileColumnDataTypes = Array(1, 1, 1, 1, 1, 1)
        .TextFileThousandsSeparator = "."
        .TextFileTrailingMinusNumbers = True
        .Refresh BackgroundQuery:=False
    End With
End If
Call usunPolaczenie

    Application.ScreenUpdating = True
End Sub
Sub usunPolaczenie()
On Error Resume Next
    Cells.QueryTable.Delete
End Sub

PQ to jeszcze nie moja bajka, dlatego nie jestem pewien czy o to Ci chodziło...
_________________
Nunus67
ID posta: 362692 Skopiuj do schowka
 
 
mr_petrus
świeżak


Pomógł: 1 raz
Posty: 3
Wysłany: 12-03-2019, 18:48   

@nunus67 Dzięki za odpowiedź. Kod na pewno się przyda.
ID posta: 364059 Skopiuj do schowka
 
 
Wyświetl posty z ostatnich:   
Odpowiedz do tematu
Nie możesz pisać nowych tematów
Nie możesz odpowiadać w tematach
Nie możesz zmieniać swoich postów
Nie możesz usuwać swoich postów
Nie możesz głosować w ankietach
Nie możesz załączać plików na tym forum
Możesz ściągać załączniki na tym forum
Dodaj temat do Ulubionych
Wersja do druku

Skocz do:  

Powered by phpBB modified by Przemo © 2003 phpBB Group
Theme xandgreen created by spleen& Programosy modified v0.3 by warna
Opieka techniczna www.marketingNET.pl

Archiwum

Strona używa plików cookies.

Kliknij tutaj, żeby dowiedzieć się jaki jest cel używania cookies oraz jak zmienić ustawienia cookie w przeglądarce.
Korzystając ze strony użytkownik wyraża zgodę na używanie plików cookies, zgodnie z bieżącymi ustawieniami przeglądarki.
Sprawdź, w jaki sposób przetwarzamy dane osobowe