Anzeige
Archiv - Navigation
1876to1880
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Makro wird nicht ausgeführt

Makro wird nicht ausgeführt
21.03.2022 08:40:43
Christian
https://www.herber.de/bbs/user/151921.xlsm
Hallo,
ich bin verzweifelt und weiß nicht mehr weiter. Ich habe das seit Jahren funktionierende Makro namens Ergebnis, welches auch wie gewollt in der Beispielmappe funktioniert.
Jetzt habe ich eine zweite Tabelle Namens U30 und auch ein entsprechendes Makro namens U30.
Die beiden Makros unterscheiden sich lediglich in der Anzahl der Spalten und dem Tabellenblatt auf das sie sich beziehen. Das Eigentliche was sie tun sollen, ist bei beiden dasselbe.
Nur warum wird das Makro U30 nicht ausgeführt? Ich weiß nicht mehr weiter.
Als Referenz was passieren soll, könnt ihr wie gesagt das Makro Ergebnis nehmen.
Viele Grüße und vielen Dank für jede Hilfe
Christian

28
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
U30 ist eine Zelladresse!
21.03.2022 09:39:55
Matthias
Hallo,
benenne das Makro um.
z.B. in
Sub U_30()
Gruß ...
und Du solltest sicherstellen ...
21.03.2022 09:54:02
Matthias
Hallo,
.. das Du Dich immer im richtigen Register befindes
... und vor Rows würde ich einen Punkt setzen.
also statt:

loLetzte = .Cells(Rows.Count, 1).End(xlUp).Row
so:

loLetzte = .Cells(.Rows.Count, 1).End(xlUp).Row
Gruß Matthias
Anzeige
AW: und Du solltest sicherstellen ...
21.03.2022 10:00:33
Christian
Hallo Matthias,
erstmal vielen Dank für deine Zeit und Mühe, dir mein Problem anzuschauen. Siehst du hab ich wieder was gelernt, hab schlichtweg nicht gewusst dass Zellbezeichnungen nicht als Makroname genutzt werden können.
Ach wenn es funktioniert, bleiben troztdem noch zwei Fragen offen.
Zum Einen was bewirkt der Punkt?
Zum anderen dachte ich, ich schließe Verwechslungen aus indem ich die Makros nach den Tabellen benenne und dazu nochmal explizit sage, in welchem Worksheet es ausgeführt werden soll.
Was genau meinst du jetzt weshalb ich trotzdem sicher sein soll, dass ich mich im richtigen Register befinde? Was genau ist dir denn an den Makros aufgefallen, was noch zum Problem werden könnte?
Danke
Christian
Anzeige
AW: und Du solltest sicherstellen ...
21.03.2022 10:21:00
Herbert_Grom
Hallo Christian,
wenn ich mal für Matthias einspringen darf:
Mit "With Worksheets("U30")" stellst du sicher, dass dein Code im gewünschten Sheet ausgeführt wird und der Punkt vor "Rows, Range oder Cells" bewirkt, dass sich dieser Befehl auf das hinter "With" angegebene Objekt bezieht.
Servus
AW: und Du solltest sicherstellen ...
21.03.2022 10:32:14
Christian
Hallo Herbert,
selbstverständlich darfst du einspringen.
Verstehe ich richtig, ohne den Punkt, würde sich die Suche nach der letzten Zeile auf das aktive Tabellenblatt beziehen?
Das würde zumindest erklären was Matthias mit dem richtigen Register meinte.
Danke
Christian
Anzeige
AW: und Du solltest sicherstellen ...
21.03.2022 11:09:37
Daniel
Richtig.
Range und Cells ohne Tabellenblattangabe davor beziehen sich immer auf das aktive Tabellenblatt, bzw falls das Makro in einem Tabellenblattmodul steht auf das Tabellenblatt des Moduls.
Daher sollte man, wenn man mit mehreren Blättern arbeitet und man ein bestimmtes Tabellenblatt bearbeiten will, dieses auch angeben, dann funktioniert der Code unabhängig davon, welches Tabellenblatt gerade aktiv ist.
Die With-Klammer kann hier Schreibarbeit sparen, indem man anstelle des bei With definierten Tabellenblatts nur den Punkt am Anfang schreibt.
Bei Rows.Count sollte es eigentlich egal sein, ob man die Anzahl der Zeilen im aktiven oder im zu bearbeitenden Blatt ermittelt, weil alle Blätter die gleiche Anzahl Zeilen haben, aber es gibt zwei Fälle, in denen das schief gehen kann:
a) du arbeitest gleichzeit mit einer neuen Exceldatei (ab 2007) und einer alten (bis 2003), weil diese unterschiedliche Zeilenzahlen haben
b) die Mappe enthält ein Diagrammblatt (Chart) und dieses ist aktiv, dannläuft Rows.Count auf einen Fehler, weil Diagrammblätter keine Zeilen haben.
Gruß Daniel
Anzeige
AW: und Du solltest sicherstellen ...
21.03.2022 11:24:43
Christian
Hallo Daniel,
danke für die Erklärung.
jetzt hast du mich leider etwas verwirrt.
Wenn es egal ist, in welchem Blatt es ermittelt wird, warum muss es dann überhaupt ermittelt werden? Die Ermittlung macht doch nur Sinn, wenn das Ergebnis nicht automatisch feststeht.
Ich dachte ich brauche diese Codezeile um zu ermitteln, wieviele genutzte Zeilen es im Blatt Ergebnis gibt um dann sagen zu können, bis wohin die Formeln kopiert werden sollen. Aber diese Annahme würde ja bedeuten, dass es eben nicht egal ist in welchem Blatt ich es ausführe, weil ja jedes Blatt unterschiedlich viele genutzte Zeilen hat.
Gruß
Christian
Anzeige
AW: und Du solltest sicherstellen ...
21.03.2022 11:35:01
Daniel
Hi
im Prinzip hast du recht.
Die meisten Menschen können sich aber einen sinnvollen Text (Rows.Count) einfacher merken als eine siebenstellige Zahl wie 1048576.
Außerdem ist nicht außzuschließen, dass MS das nochmal ändert und in der nächsten Version die Anzahl der Zeilen verdoppelt, dann sollte der Code ja auch funktionieren.
die letzte benutze Zeile wird hier so ermittlelt, dass man von untersten Zeile auf dem Tabellenblatt nach oben springt bis zur nächsten Zelle mit inhalt (End(xlup)) und das rows.Count gibt einem nur die Zeilennummer für die unterste Zelle auf dem Blatt, von dern man dann nach oben springt, um die letzte befüllte Zelle zu finden.
Gruß Daniel
Anzeige
AW: und Du solltest sicherstellen ...
21.03.2022 12:18:40
Christian
Hallo Daniel,
vielen DAnk, jetzt habe ich es verstanden.
Gruß
Christian
AW: und Du solltest sicherstellen ...
21.03.2022 10:29:53
Matthias
Hallo,
Zum Einen was bewirkt der Punkt?
Gegenfrage: was bewirkt der Punkt vor Cells? (dort benutzt Du ihn doch auch)
Das ist die Referenz zum Worksheet, welches Du mit With ansprichst.
Was genau meinst du jetzt weshalb ich trotzdem sicher sein soll, dass ich mich im richtigen Register befinde?
Du bekommst einen Laufzeitfehler, wenn Du Dich nicht in dem richtigen Register befindest,
weil Du Dich mit .Range("A1").Select (beachte den Punkt!) auf das Register beziehst welches Du mit With ansprichst.
Befindest Du dich also im (Register"U30") und startest das Makro(Ergebnis) will Excel die Zelle im anderen Register markieren.
Das geht ja logischerweise nicht.
Prüf also vorher ab wo Du Dich befindest

Sub Ergebnis()
Dim loLetzte As Long, j As Long, x As Long, lC As Long
If ActiveSheet.Name  "Ergebnis" Then Exit Sub
und

Sub U_30()
Dim loLetzte As Long, j As Long, x As Long, lC As Long
If ActiveSheet.Name  "U30" Then Exit Sub
Gruß Matthias
Anzeige
AW: und Du solltest sicherstellen ...
21.03.2022 10:36:32
Christian
Hallo Matthias,
das Makro ist in 9 Jahren so dermaßen oft verändert, angepasst worden, immer an neue Ansprüche. Mal mit Hilfe von Google, mal mit Hilfe von euch. Wenn es nur um Änderung von Ranges ging auch ganz allein. Da war mir gar nicht aufgefalllen dass es mal mit und mal ohne Punkt genutzt wurde. Hauptsache es hatte funktioniert.
Habe deinen Vorschlag mit dem Überprüfen übernommen, Danke
Christian
Gerne... owT
21.03.2022 10:38:44
Matthias
AW: Makro wird nicht ausgeführt
21.03.2022 10:31:49
ChrisL
Hi
Im Sinne einer Alternative, eine Lösung mittels Power Query (PQ):
https://www.herber.de/bbs/user/151925.xlsx
Da die Daten bereits Datenbank-Charakter haben (formatierte Tabellen mit Key), scheint mir eine Abfrage/Query naheliegend. Im PQ-Editor kannst du das Resultat auch gleich nach Bedarf filtern und sortieren.
Bei Interesse bitte PQ-Intro Videos schauen und bei Bedarf nachfragen. Es wird insbesondere die Technik "Abfragen zusammenführen" (JOIN) verwendet. Die Datums-Differenz Funktion habe ich hier abgeschaut:
https://www.excel-exercise.com/datedif-for-power-query/
cu
Chris
Anzeige
AW: Makro wird nicht ausgeführt
21.03.2022 10:47:55
Christian
Hallo Chris,
ich habe schon öfter drüber nachgedacht, das ganze mit PQ zu lösen, mir fehlten aber die Kenntnisse es auch umzusetzen.
Das Ursprüngliche Makro und die Idee es auf diesem Weg zu lösen stammt aus dem Winter 12/13 also einer Zeit, lange vor der Existenz von Powerquery. (Korrigier mich wenn ich falsch liege).
Der Hintergedanke damals war folgende Problematik. Damals waren es noch einige mehr Formeln und ca. 60000 Zeilen. Eine Berechnung aller Formeln hatte ca. 30 Minuten gedauert und das bei jeder kleinsten Änderung an der Tabelle. Die Größenordnung von 60000 Zeilen wird denke ich auch zumindest die Tabelle Ergebnis erreichen, wenn sie mal fertig ist.
Ich hatte also eine Lösung gesucht, bei der diese vielen Formeln nur auf Wunsch (Sprich dann wenn auch Änderungen zu erwarten sind) berechnet werden und daher dann dieses Makro dass die Formeln aus Zeile 1 in die restlichen Zeilen kopiert, ab Zeile 2 wieder die Werte einfügt, die Tabelle neu sortiert und für den Fall dass durchs sortieren die Formeln nach unten gewandert sind die Formeln wieder in Zeile 1 zurückbringt.
Ich weiß das hätte ich auch lösen können indem ich die automatische Formelberechnung aktiviere/deaktiviere. Davon habe ich allerdings Abstand genommen, weil ich das nicht auf diese eine Mappe beschränken kann, sondern nur allgemein für Excel einstellen kann.
Deinen Vorschlag schaue ich mir heute Nachmittag in Ruhe an, jetzt muss ich erstmal für meine Schwester (in Quarantäne) einkaufen gehen, sie wartet und hat Hunger. Melde mich dann heute Nachmittag wieder. Hoffe du hast Verständnis, dass ich wenn sich jemand schon soviel Mühe macht, auch die notwendige Zeit haben möchte, mich damit auseinanderzusetzen.
Gruß und danke
Christian
Anzeige
AW: Makro wird nicht ausgeführt
21.03.2022 11:34:31
ChrisL
Hi Christian
Danke für die Rückmeldung.
Lass dir Zeit. Hier ein häufig zitierter Link zum Einstieg:
https://excelhero.de/power-query/power-query-ganz-einfach-erklaert/
(N.b. falls du bereits Vorkenntnisse z.B. aus Access oder SQL hast, ist der Schritt zu PQ nicht weit)
Ich nehme mal an, dass die Neuberechnung heute auch mit Formeln keine 30 min. mehr dauern würde, aber bei grösseren Datenmengen ist PQ tatsächlich eine mögliche Alternative. Einzig die "Volltext" Spalte ganz rechts scheint mir in einer DB-/Abfrage-Logik etwas atypisch.
cu
Chris
AW: Makro wird nicht ausgeführt
21.03.2022 12:32:45
Christian
Hallo Chris,
habe zumindest mal kurz hineingeschaut.
Ich sehe da auf den ersten Blick leider gleich mehrere Problematiken.
ZUm Einen hatte es seinen Sinn, die beiden Tabellen voneinander zu trennen.
Zum einen, weil ich in der Tabelle Ergebnis die Altersberechnungen nicht benötige.
Des weiteren sagte ich ja, die Tabelle Ergebnis ist noch nicht fertig. Ich rechne in Zukunft noch mit folgenden beiden Fällen
1. das auch Schauspieler vorkommen, die vor dem 1.1.1900 geboren sind.
2. Das Serien vorkommen, die über einen langen Zeitraum laufen, z.B. sage ich jetzt einfach Tatort, da würde in Spalte C das ursprüngliche Release Date also der 29.11.1970 stehen, aber viele Schauspieler die im Tatort mitgespielt haben, waren ja am 29.11.1970 noch gar nicht geboren, also DATEDIF würde in diesen Fällen gar nicht funktionieren.
Das sind die 3 Gründe, weshalb es keine weiteren Berechnungen in Ergebnis gibt.
Aber dafür gibt es dann die Tabelle U30, in der ich dann in den Fällen, wo ich weitere Berechnungen möchte, nicht auf Serien, sondern auf einzelne Folgen eingehe, weil bei Ausstrahlung einzelner Folgen waren die Schauspieler alle bereits geboren.
Bei dem Text in Spalte J handelt es sich um Dateinamen, daher wurde auch der Doppelpunkt ersetzt, weil der in Windows Dateinamen nicht vorkommen darf. Wobei wir dann bei dem letzten Punkt sind, der mir auffällt. Ich kann nicht nachvollziehen, was ich bei einer PQ Lösung tun muss, um noch weitere Zeichen an dieser Stelle zu ersetzen. Da reicht ja schon aus, das ein künftiger Filmtitel ein ? enthält.
Viele Grüße
Christian
AW: Makro wird nicht ausgeführt
21.03.2022 13:20:54
ChrisL
Hi Christian
Mag sein, dass ich den einen oder anderen Zusammenhang nicht erkannt habe und dass die Beispieldatei somit noch nicht dem gewünschten Endresultat entspricht.
Die Tabelle Ergebnis lässt sich einfach erzeugen. In der bereits bestehenden Abfragen kann man die ganzen letzten Schritte zur Differenzberechnung weglassen. Generell kannst du beliebig Zwischenresultate ausgeben, was sich aber auf die Performance auswirkt.
Mit Daten vor 1900 musste ich bisher nie rechnen. Nach kurzem überfliegen des nachfolgenden Artikels sollte aber auch dies machbar sein:
https://solveandexcel.ca/2021/06/03/dealing-with-dates-prior-to-1900-in-excel-with-power-query/
Ein Join von Einzelfolgen scheint mir kein Problem. Anhand der Beispieldatei konnte ich diese bisher einfach nicht erkennen. Ich vermute es gibt noch andere Datenquellen, welche in der Datei nicht dargestellt sind. Der Schlüssel geht von Schauspieler zur Serie, einen Schlüssel zwischen Serie und Folge sehe ich nicht.
Die Replace-Funktion lässt sich weiter verschachteln, um zusätzlich Zeichen zu entfernen. Wenn nichts dazwischen kommt mache ich dir nachher noch eine benutzerdefinierte Funktion dafür.
Ich sehe schon, dass meine Lösung nur einen Ansatz darstellt und bis zur Endlösung noch einiges an Arbeit notwendig wäre.
cu
chris
AW: Makro wird nicht ausgeführt
21.03.2022 13:54:22
Christian
Hallo Chris,
ich glaub du hast mich nicht ganz verstanden und daher vermutest du mehr Aufwand als notwendig.
Ich mache es ganz kurz, wenn du mir helfen willst, setz das was bisher in den beiden Blättern Ergebnis und U30 steht und berechnet wird 1:1 um ohne irgend etwas daran zu ändern. Das Ganze nutze ich seit 9 Jahren, wenn das Ganze nicht funktionieren würde, wie es ist hätte ich es längst geändert.
Daten vor 1900 kommen ausschließlich, auch künftig nur in Ergebnis vor, nicht in U30. Und wie bereits erwähnt plane ich in Ergebnis keine weiteren Berechnungen, also spielen Berechnungen mit diesen Daten auch keine Rolle.
Einzelne Folgen kommen sehr wohl bereits in der Tabelle vor, filter bitte mal im Blatt Filme Spalte E nach "tvEpisode" dann siehst du bei was es sich um eine einzelne Folge handelt.
Ich verspreche dir, es gibt keine weiteren Datenquellen als die beiden csv Dateien die hinter den Tabellen Filme und Leute stecken.
Ich verstehe im Moment nicht an was für einen Join du überhaupt denkst. Das Einzige was ich mit den Folgen sagen wollte ist, dass komplette Serien ausschließlich in "Ergebnis" stehen, einzelne Folgen ausschließlich in "U30" während die übrigen Dinge wie Filme in beiden Tabellen stehen können.
Ich hab das mit Filmen und einzelnen Folgen nur aus dem Grund erwähnt um klarzumachen, dass die Trennung der beiden Tabellen notwendig ist und es keinen Sinn macht, sie zu einer zusammenzuführen.
Aber wie bereits gesagt, ich hatte 9 Jahre Zeit, mir die Tabellen Ergebnis und U30 so zu bauen, wie ich sie am sinnvollsten nutzen kann. Wenn eine PQ Lösung dann wäre mir am einfachsten geholfen wenn es 1:1 umgesetzt würde ohne Änderungen. Die 4 geposteten Blätter beinhalten alles, was hierfür notwendig ist, es gibt keine weiteren Datenquellen.
Gruß
Christian
Gruß
Christian
AW: Makro wird nicht ausgeführt
21.03.2022 15:49:03
ChrisL
Hi Christian
Zu den Einzelfolgen... Anhand der Beispieldatei konnte ich diese bisher einfach nicht erkennen.
Inzwischen sehe ich was du meinst.
Die beiliegende Lösung sollte nun etwas näher am Ziel sein.
https://www.herber.de/bbs/user/151943.xlsx
cu
Chris
AW: Makro wird nicht ausgeführt
21.03.2022 19:11:00
Christian
Hallo Chris,
ja das sieht schonmal gar nicht so schlecht aus. Sehe ich richtig, wenn ich Filme und entsprechende Schauspieler hinzufügen will, mache ich das in den beiden Bezüge Blättern und aktualisiere dann die Abfragen?
Um ehrlich zu sein, eine Sache stört mich bei der Lösung und zwar die Tatsache, dass da noch 2 Blätter hinzukommen. Die Originaltabelle hat bereits 15 Blätter (keine Angst die anderen Blätter haben höchstens was hiermit zu tun, dass eins davon noch per XVERWEIS auf die Daten der Tabelle U30 zugreift und noch ein wenig Statistik betreibt. Hat also nichts mit dem Erstellen deiner beiden Abfragen zu tun.
Aber mein Problem ist halt, zum einen reicht der Platz ohne scrollen zu müssen bald nicht mehr aus in der Leiste der Blätter und zum Teil verliert man dann auch irgendwann den Überblick.
Aber ich fürchte du hast die zusätzlichen Blätter gemacht, damit Ergebnis und U30 nicht jedesmal neu berechnet werden oder? Was ja eigentlich in meinem Sinn war.
Muss jetzt mal schaun was ich damit mache. Auf jedenfall schonmal eine sehr gute Alternative, die sich trotz der beiden zusätzlichen Blätter lohnt in meine Mappe einzubauen.
Danke
Christian
AW: Makro wird nicht ausgeführt
22.03.2022 09:59:15
ChrisL
Hi Christian
Sehe ich richtig, wenn ich Filme und entsprechende Schauspieler hinzufügen will, mache ich das in den beiden Bezüge Blättern und aktualisiere dann die Abfragen? korrekt
Im Anhang noch ein Version, wo das Blatt Bezüge zusammengefasst wurde. Episoden lassen sich anhand "Title Type" unterscheiden und darum müssen die Bezüge nicht separiert werden.
https://www.herber.de/bbs/user/151952.xlsx
Das Blatt Bezüge kann man auch ausblenden. Du schreibst, dass Filme/Leute aus einer externen CSV-Datei bezogen werden. Dann würde ich dies mit den Bezügen (sind ebenfalls Quelldaten) gleich machen. Die Datenquellen würde ich dann gar nicht in den Tabellen ablegen, sondern nur noch Abfrageresultate darstellen. Dies sollte die Datenmenge der Exceldatei reduzieren und die Performance verbessern.
(n.b. fürs Forum als Beispieldatei ist es hingegen praktisch, dass du die Quelldaten gleich in die Mappe aufgenommen hast)
Aber ich fürchte du hast die zusätzlichen Blätter gemacht, damit Ergebnis und U30 nicht jedesmal neu berechnet werden oder?
Hat nichts mit der Aktualisierung zu tun, sondern mit meiner Denkweise. Die Quelldaten (wie gesagt, Bezüge zählen auch dazu) und die Abfrageresultate würde ich strikte trennen. Theoretisch kannst du die beiden Tabellen (Quelle / Resultat) auch nebeneinander stellen, aber die fehlende Trennung ist m.E. nicht erstrebenswert.
cu
Chris
AW: Makro wird nicht ausgeführt
22.03.2022 17:04:04
Christian
Hallo Chris,
da ist leider ein Fehler drin.
Zitat aus einem meiner vorherigen Posts:
Das Einzige was ich mit den Folgen sagen wollte ist, dass komplette Serien ausschließlich in "Ergebnis" stehen, einzelne Folgen ausschließlich in "U30" während die übrigen Dinge wie Filme in beiden Tabellen stehen können.
Mit anderen Worten, es können auch Filme in U30 stehen und in meiner Bsp Tabelle stand mit 37 sekanzu auch ein solcher drin.
Die eigentliche Trennung der beiden Tabellen ist eine andere.
Ergebnis lässt sich m.e. noch leicht mit PQ realisieren. Da wurden ja lediglich die Einzelfolgen die noch in Filme erwähnt sind weggelassen.
U30 steht für unter 30 also die Produktionen, in denen Schauspieler mitgespielt haben, die am heutigen Tag jünger als 30 sind und das können sowohl Filme als auch Serien sein.
In der U30 Tabelle übernehme ich die Filme von Schauspielern unter 30 Jahren aus der Tabelle Ergebnis und recherchiere bei Serien selbst, in welchen Folgen sie mitgespielt haben und trage dann die tt und nm codes per copy + paste in das Blatt ein. Dann gab es eine Reihe von Zeilen die nur aus den beiden Codes bestehen und das Makro hat dann aus den csv Dateien die anderen Informationen geholt und die Formeln haben die Berechnungen angestellt.
Daher meine Frage, wie ich neue Zeilen händig hinzufügen kann.
Vollständig automatisiert kann die Tabelle U30 nicht funktionieren. Es gibt keine Logik, die vorgibt, in welchen Folgen ein einzelner Schauspieler mitgespielt hat, nicht jeder Schauspieler spielt in jeder Folge mit, das kann man nur händg recherchieren und eintragen.
AW: Makro wird nicht ausgeführt
22.03.2022 18:37:11
ChrisL
Hi Christian
Ja gut, der eine Datensatz ist mir nicht aufgefallen. Dann halt doch wieder die ursprüngliche Lösung mit zwei separaten Bezugstabellen. Eine andere Lösung sehe ich im Rahmen der bereits gegebenen Struktur auch nicht.
cu
Chris
AW: Makro wird nicht ausgeführt
23.03.2022 18:01:47
Christian
Hallo Chris,
sorry dass ich jetzt erst antworte. Mir fiel grad auf dass ich anscheinend die letzte Nachricht nicht abgeschickt habe.
Mal ne blöde Frage, kann man nicht zwei Blätter sparen, indem man die Resultat Blätter in die Bezugsblätter integriert?
Aber nun mal zurück zur Realität. Auch wenn du dir sehr viel Mühe gegeben hast, geht meine Tendenz dazu, bei der Makrolösung zu bleiben. Nicht zuletzt deshalb, ich sagte zwar dass ich in der Ergebnistabelle keine weiteren Berechnungen anstellen werde. Aber wer weiß ob das für immer und ewig auch für die U30 Tabelle gilt. Formeln hinzufügen und das Makro um entsprechend viele Spalten zu erweitern, ist kein Problem für mich. Aber wenn ich mir anschaue, wie du die Formeln in der PQ Abfrage umgesetzt hast ist das eine völlig neue Syntax, von der ich keine Ahnung habe.
Gruß
Christian
AW: Makro wird nicht ausgeführt
23.03.2022 18:43:24
ChrisL
Hi Christian
Ja die Quelle und das Resultat könnte man auch ins gleiche Blatt setzen. Es sind dann trotzdem zwei separate Tabellen, aber im gleichen Blatt. Wenn du möchtest, kann ich dies noch ändern.
PQ und insbesondere die vorgeschlagene Lösung (mit benutzerdefinierten Funktionen etc.) benötigt tatsächlich eine intensivere Einarbeitung. Völlig OK, wenn du bei der bereits vorhandenen, funktionierenden Lösung bleibst.
cu
Chris
PQ Funktion Sonderzeichen entfernen
21.03.2022 15:24:11
ChrisL
Hi
Erstmal die versprochene Power-Query Funktion zur Bereinigung von Text-Strings für Dateinamen.
https://www.herber.de/bbs/user/151938.xlsx
Erstmal eine neue leere Abfrage und in der Befehlszeile folgendes eingeben (kann nach belieben erweitert werden). Die Liste als "ungültigeSonderzeichen" benennen.

= {"?","*","",".",",","\","+",":","=","/","""",";","[","]","|"}
Danach erneut eine neue leere Abfrage und im erweiterten Editor den nachfolgenden Text einkopieren. Die Funktion als "fxCleanSonderzeichen" benennen.

(InputText as text, loop as number) =>
let
CleanText = Text.Replace(InputText,Text.Combine(List.Range(ungültigeSonderzeichen,loop,1)),""),
output =
if loop = List.Count(ungültigeSonderzeichen) then
CleanText
else
@#"fxCleanSonderzeichen" (CleanText,loop+1)
in
output
Danach eine neue Spalte hinzufügen "Benutzerdefinierte Funktion aufrufen". Der Start-Wert vom Loop ist 0.
cu
Chris
AW: PQ Funktion Sonderzeichen entfernen
21.03.2022 19:15:11
Christian
Hallo Chris,
danke auch für die erklärung, sowieso auch danke für die viele Mühe.
Christian

313 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige