Registriert seit: 29.09.2015
Version(en): 2030,5
In VBA:
Code: Sub M_snb()
sn = Cells(1).CurrentRegion
ReDim sp(2 * UBound(sn), 1)
For j = 1 To UBound(sn)
sp(2 * (j - 1), 0) = Split(sn(j, 1), "/")(0)
sp(2 * (j - 1) + 1, 0) = Split(sn(j, 1), "/")(1)
sp(2 * (j - 1), 1) = sn(j, 2)
sp(2 * (j - 1) + 1, 1) = sn(j, 2)
Next
Cells(1, 6).Resize(UBound(sp) + 1, 2) = sp
End Sub
Registriert seit: 21.12.2017
Version(en): MS 365 Family (6 User x 5 Geräte für jeden) Insider-Beta
06.05.2019, 15:51
(Dieser Beitrag wurde zuletzt bearbeitet: 06.05.2019, 15:56 von LCohen.)
(06.05.2019, 15:44)Jockel schrieb: [...] obwohl es mal wieder geschafft wurde ein dunkles Tuch über PQ zu werfen. [...]
Aha! Da zeige ich - vielleicht zum ersten Mal in dt. Foren - eine VBA-Aufzeichnung (die kann man auch ohne VBA-Wissen) einer PQ-Erstellung (also das, was Hein Blöd mit Menüs macht, was nicht heißen soll, dass ich nicht auch nur Hein Blöd bin), und dann ist das nur ein dunkles Tuch? Wo ich eher ein Licht angeknipst habe?
Englisch wirst Du ja können und solche Wörter wie "Delimiter" et al. im Code verstehen, oder?
Registriert seit: 10.04.2014
Version(en): Office 2019
Moin, deinen VBA-Code meinte ich nicht. Eher die Polemik um dieses Thema und wie Power Query wieder behandelt wird und der, der ein Vorschlag unterbreitet. Und wie das spezielle Angebot hier behandelt wurde. Dass der TE Power Query kannte und den Vorschlag nicht wollte ist ja die eine Sache. Aber hier ging es wie schon so oft darum, dass das gar nicht ausprobiert wurde sondern die Art und Weise wie gegen den Vorschlag vorgegangen wurde.
Bei dieser popeligen Problematik, so ein Zauber darum zu machen. Viel heiße Luft um zwei Klicks. Oje. Das sagt schon Einiges aus.
Deine Einlassung - das hatte ich auch schon geschrieben - kann und will ich gar nicht bewerten. Ich versuche auch nicht persönlich zu werden.
Gruß Jörg
ich muss mich erst wieder ganz langsam heran robben. Also bitte ich um Nachsicht
"Wer immer tut, was er schon kann, bleibt immer das, was er schon ist." - Henry Ford
Registriert seit: 21.12.2017
Version(en): MS 365 Family (6 User x 5 Geräte für jeden) Insider-Beta
Ok.
Könntest Du vielleicht ein Beispiel für ein PQ mit variabel vielen / pro Zelle posten (gern als Datei), die dann trotzdem untereinander gehängt werden? Also:
1/23
45/6/7
89
wird einfach durch "Aktualisieren" zu
1
23
45
6
7
89
Dann wäre PQ nämlich eine schicke Kiste. Ich vermute, dass das geht.
Registriert seit: 10.04.2014
Version(en): Office 2019
06.05.2019, 17:06
(Dieser Beitrag wurde zuletzt bearbeitet: 06.05.2019, 17:06 von Jockel.)
(06.05.2019, 16:44)LCohen schrieb: ...
wird einfach durch "Aktualisieren" zu
...
Hallo, nein - das wäre ja nur der Aktualisieren-klick. Das geht geht nicht. Ich hatte ja bereits geschrieben, wie's geht.
Es bleibt dann wahrscheinlich für dich eine "lame duck" ... ... Englisch wirst du ja können...
Gruß Jörg
ich muss mich erst wieder ganz langsam heran robben. Also bitte ich um Nachsicht
"Wer immer tut, was er schon kann, bleibt immer das, was er schon ist." - Henry Ford
Registriert seit: 29.09.2015
Version(en): 2030,5
Was mich wundert ist dass die Leute die so heftig PQ propagieren nicht verstehen dass PQ nur ein neues User Interface ist.
Im 'Background' wird einfach VBA verwendet. In diesem Fall VBA in ein eigenem PQ Library (wie z.B ADODB.recordset).
Registriert seit: 10.04.2014
Version(en): Office 2019
(06.05.2019, 17:25)snb schrieb: Was mich wundert ist dass die Leute die so heftig PQ propagieren nicht verstehen dass PQ nur ein neues User Interface ist.
Im 'Background' wird einfach VBA verwendet. In diesem Fall VBA in ein eigenem PQ Library (wie z.B ADODB.recordset).
Danke für die Aufklärung. Wusste ich nicht. Muss ich nicht wissen. Mir reicht, dass es nicht als *xlsm oder *.xlsb abgespeichert werden muss. Und das es menügesteuert ist. Ich keine Programmiersprache können muss. Also ist Power Query nichts weiter als VBA für doofe. Passt! Ergo: Da musst du dich nicht wundern (zumindest, was mich angeht)
Gruß Jörg
ich muss mich erst wieder ganz langsam heran robben. Also bitte ich um Nachsicht
"Wer immer tut, was er schon kann, bleibt immer das, was er schon ist." - Henry Ford
Registriert seit: 10.04.2014
Version(en): Microsoft 365, mtl. Kanal
Hallo zusammen,
ich habe die Diskussion aus dem ursprünglichen Thema abgetrennt. Es führte nicht mehr zur weiteren Problemlösung der Frage.
Gruß Günter
Jeder Fehler erscheint unglaublich dumm, wenn andere ihn begehen.
angebl. von Georg Christoph Lichtenberg (1742-1799)
Registriert seit: 10.04.2014
Version(en): Office 2019
06.05.2019, 17:49
(Dieser Beitrag wurde zuletzt bearbeitet: 06.05.2019, 17:51 von Jockel.)
Okay, verstehe, da bin ich ganz nah bei dir. Aber: wo ist der eigentlich thread? Und. Wichtig: Ich habe diese Diskussion nicht voran getrieben und auch nicht eröffnet. Aber haut ruhig immer alle druff...
Habe den thread gefunden...
Gruß Jörg
ich muss mich erst wieder ganz langsam heran robben. Also bitte ich um Nachsicht
"Wer immer tut, was er schon kann, bleibt immer das, was er schon ist." - Henry Ford
Registriert seit: 21.12.2017
Version(en): MS 365 Family (6 User x 5 Geräte für jeden) Insider-Beta
06.05.2019, 17:49
(Dieser Beitrag wurde zuletzt bearbeitet: 06.05.2019, 18:12 von LCohen.)
Antwort zu #15, wo Jockel nicht verstanden hatte, was ich von ihm wollte, weil er es nämlich schon hatte, was ich nicht wußte, was er mir wiederum nicht als Fehler meinerseits zutraute ;) :
Sub PQListeAusVariablenFeldanzahlen(): Workbooks.Add xlWorksheet
[A1:A5] = WorksheetFunction.Transpose(Split("Titel '1/23 '4/5/6 '7 '8/9"))
ActiveSheet.ListObjects.Add(xlSrcRange, Range("$A$1:$A$5"), , xlYes).Name = "Tabelle1"
Range("Tabelle1[[#All],[Titel]]").Select
r = Chr(13) & "" & Chr(10)
ActiveWorkbook.Queries.Add Name:="Tabelle1", Formula:="let" & r & _
" Quelle = Excel.CurrentWorkbook(){[Name=""Tabelle1""]}[Content]," & r & _
" #""Geänderter Typ"" = Table.TransformColumnTypes(Quelle,{{""Titel"", type text}})," & r & _
" #""Spalte nach Trennzeichen teilen"" = Table.ExpandListColumn(Table.TransformColumns(#""Geänderter Typ"", {{""Titel"", Splitter.SplitTextByDelimiter(""/"", QuoteStyle.None), let itemType = (type nullable text) meta [Serialized.Text = true] in type {itemType}}}), ""Titel"")," & r & _
" #""Geänderter Typ1"" = Table.TransformColumnTypes(#""Spalte nach Trennzeichen teilen"",{{""Titel"", Int64.Type}})" & r & "in" & r & _
" #""Geänderter Typ1"""
Worksheets.Add
With ActiveSheet.ListObjects.Add(SourceType:=0, Source:= _
"OLEDB;Provider=Microsoft.Mashup.OleDb.1;Data Source=$Workbook$;Location=Tabelle1;Extended Properties=""""" _
, Destination:=Range("$A$1")).QueryTable
.CommandType = xlCmdSql
.CommandText = Array("SELECT * FROM [Tabelle1]")
.RowNumbers = False
.FillAdjacentFormulas = False
.PreserveFormatting = True
.RefreshOnFileOpen = False
.BackgroundQuery = True
.RefreshStyle = xlInsertDeleteCells
.SavePassword = False
.SaveData = True
.AdjustColumnWidth = True
.RefreshPeriod = 0
.PreserveColumnInfo = True
.ListObject.DisplayName = "Tabelle1_2"
.Refresh BackgroundQuery:=False
End With
End Sub
Dieser Code läuft also sofort und erstellt auch die von mir gewünschte Teilung "variabel vieler Felder in einer Zelle" in eigene Zeilen.
|