Hallo Kai, ich habe mittler weilen schon sehr viele Videos von Dir angeschaut und Sie sind alle sehr interessant. Ich stehe mit VBA noch ganz am Anfang, bin zufällig durch ein Video von Dir darauf gekommen. Jetzt muss ich erst mal schauen wie ich als blutiger Anfänger, alles Stück für Stück mir merke und dann umsetzte zu dem, was ich vorhabe. Mache mit Deinen Videos weiter so, Sie sind sehr hilfreich. Und Du erklärst das mit deiner ruhigen Stimme, so dass man es nachverfolgen kann. Schönes Wochenende LG Dirk
Super Beitrag, wenn ich auch schon fast alle Tipps gekannt habe, finde ich trotzdem, dass du - in Deinen Videos - die Problemlösungen immer sehr gut (kurz und knapp, aber trozdem verständlich) erklärst!
Verständliches Video, Danke dafür! Was mir fehlte bei vden Haltepunkten war debug.assert, welches automatisch das Skript stoppt, wenn eine Bedingung (nicht) erfüllt wird.
Hallo und vielen Dank für die Tipps. Den Makrorecorder benutze schon öfters mal 😉 und möchte ihn auch nicht Missen. Allerdings dünne ich den Code dann in der Tat auf das nötigste aus. Die Syntaxprüfung hatte ich bis eben noch an. 😉😀. Anfangen mit VBA würde ich heute wohl auch ganz anders, aber das würden wohl die meisten. Dein Kanal ist jedenfalls immer eine Bereicherung und ich schaue auch immer mal wieder die älteren Videos erneut an.
Hallo Matt, vielen Dank für deinen anhaltenden Support. Der Makrorekorder ist auch kein Problem, wenn du den Code nicht 1 zu 1 übernimmst. Freut mich sehr, dass dir die Videos so gut gefallen, dass du sie auch mehrmals anschaust. LG Kai
Danke für die Tipps Diese nervige VBA-Meldung bin ich Dank Dir endlich los geworden. Ist mir bei Deinen ganzen Videos schon öfters aufgefallen, daß da keine Meldung aufpoppt, wenn die Anweisung unvollständig ist und Du woanders hinklickst. Von daher hatte ich da bereits nach gesucht und die Option auch gefunden ;-)
Manche Einstellungen sind schon so alt bei mir, dass ich vergesse, dass sie nicht der Standard sind. Das ist aber auf jeden Fall eine der nervigsten Sachen! LG Kai
Ich trage mal meine VBA-Lebensgeschichte bei. Ich habe mit Excel 3.0 angefangen und bin nur zufällig auf den Makro-Rekorder gestossen. Den fand ich sehr hilfreich. Damals (ca. 1995) gab es für mich schon Internet, aber keine Support-Foren. Als ich es dann mit grösseren Datenmengen zu tun hatte, war mir das ewige Geflimmere lästig und ich habe F1 bemüht, die mir super weitergeholfen hat. An diesem Punkt habe ich gemerkt, dass es eine wesentlich grössere Welt jenseits des Makro-Rekorders gibt. Ich fand es schon spannend, dass man Message-Boxen aufplatzen lassen konnte und dass ich überhaupt Eingabemasken gestalten konnte. Viele Jahre später erst - da habe ich auch erste Erfahrungen mit Visual Basic gemacht - habe ich mich mit Objekten angefreundet. Heute muss ich leider sagen: ich stehe immer noch auf Kriegsfuss mit Klassen, aber das ist eher ein Thema von Visual Studio. Da habe ich den Anschluss verloren. Mein Lebensfazit: Mein Fehler war, mich auf den Helpdesk/Support zu konzentrieren. Das ist heutzutage zur Studenten-Sklavenarbeit verkommen. Ich hätte mich mit 30 auf VBA/VS verlegen müssen. Das hole ich nicht mehr auf. Insofern beneide ich dich positiv, lieber Kai. Du hast mit deiner ruhigen und zielgerichteten Art eine wunderbare Nische gefunden.
Hallo, vielen Dank, dass uns deine VBA-Lebensgeschichte mit uns teilst. Das klingt bewegt und sehr interessant! Vielen Dank auch für die netten Worte. LG Kai
Hallo Kai, erst einmal recht vielen Dank für deine Email, ja diese Tipps sind echt hilfreich und ich hoffe nur, dass ich sie irgendwann ohne deine Hilfe auch benutzen kann🙃 auf jden Fall habe ich dank deiner unermüdlichen Hilfe schon einiges gelernt. Wünsche dir weiterhin viel Erfolg und bleib gesund.👍
Interessantes Video. Ich hatte (vor knapp 20 Jahren) mit VBA unter Access begonnen. Als Makro hatte ich meiner Erinnerung nach damals lediglich mal Autoexec verwendet, um ein Formulare beim Start der DB zu öffnen. Es hatte aber nicht lange gedauert, bis ich mich komplett auf den VBA-Editor beschränkte. Das Startformular konnte man ja auch in den Datenbankeinstellungen festlegen. Ich gebe aber zu, den Assistenten für die Befüllung von Dropdown-Feldern oder Listen-Elementen gern verwendet - um nicht zu sagen *geliebt* - zu haben. Mit Haltepunkten hatte ich eigentlich nie gearbeitet. Übrigens fehlte mir vor ein paar Tagen, als ich mit Excel-VBA (wieder) eingestiegen bin, genau diese schrittweise Abarbeitung des Code (F8). 🤭 Vielen Dank für den Tip! 😃
Ich kannte die letzten 3 bisher noch nicht ich schau atm noch Deine anderen Videos und muss sagen ich kannte bisher vieles davon nicht. Aber ja der Macro Recoder ^^ war auch bei am anfang schnell vom Tisch. Finde deine Videos Hervorragend und vorallem was ich bei vielen vermisse ist deine deutliche ausdrucksweise und sehr gute Erklärungen, und ich muss sagen alles was ich bisher nicht verstanden habe wurde dadurch verständlich. Hoffe Daher du machst noch lange diese Videos.🥰 Muss dazu auch sagen was bei dir anders ist, hab auch Videos von anderen geschaut .. auch Online Schulungen da wahren die Duzenten so Motiviert beim Reden das ich Eingeschlafen bin. 🤣
Hi , ich liebe deine Videos. Arrow kannte ich noch nicht werde ich auf alle Fälle bei meinem nächsten Projekt ausprobieren. Danke für deine gut erklärten Videos. LG dory
Hi, Tipp 2 - die Fehlermeldungen haben mich immer genervt; jetzt weiß ich, wie ich die abstelle. Tipp 3: Da bin ich gerade dabei, das zu lernen. Tipp 5, letztes Beispiel: Super. Das werde ich als nächstes in meinen Mappen umsetzen. Danke vielmals.
Hallo Kai, wie immer ein tolles Video. VBA lernen wäre deutlich einfacher gewesen, wenn ich von Anfang an Deinen tollen Kanal als Hilfestellung gehabt hätte. LG Matthias
Danke für das Video. Die Verwendung von Arrays anstatt Range werde ich mir mal genauer anschauen. Allerdings bedeutet das für mich wohl einiges an Refactoring 😱
Hallo, Kai, danke für die nützlichen und nämlich berufsbezogenen Tipps. Trotzdem füge ich zum Thema auch einen Tipp hinzu: bei außendienstlichem Lernen der VBA-Sprache ist die Option "Automatische Syntaxüberprüfung" doch nicht auszuschalten, damit der Lernende das aufmerksame Programmierungsverfahren erarbeiten können würde, was ebenso ganz wichtig ist. 😏
ich liebe deine videos, schaue diese regelmäßig--- kannst du nochmal ein video zu den arrays machen? Vielleicht Array erstellen und dann in verbindung mit for next / If then schleifen? ich würde das mit den arrays gerne nochmal an einem zweiten beispiel sehen
Hallo Andreas, es freut mich sehr, dass dir meine Videos gefallen. Ich habe deine Videoidee aufgenommen. Falls dazu mehrere Anfragen kommen, erstelle ich ein Video. LG Kai
@@KaiWeissmann ja das Thema Arrays finde ich auch interessant. Ich würde gern Eigenschaften von Zellen ändern, z.B. Farben, Rahmen, Schrift. Lässt sich so etwas auch realisieren? Oder kann ich mit Arrays nur Werte auslesen und zurückschreiben? Danke für Deine Zeit! Ich feiere Deine Videos!
@@andyr.459 Moin, die Nutzung eines Arrays bezeigt sich in diesem Fall eher darauf, dass die Anzahl der Schreibzugriffe auf das Arbeitsblatt reduziert wird. Die Ausgabe des Arrays in das Arbeitsblatt ist einmaliges Schreiben, die Schleife mit Anpassung der Werte ist das Schreiben für jede Zelle einzeln. Das Formatieren ist damit aber nicht mit Arrays direkt lösbar. Was aber möglich ist, verschiedene Zellen gemeinsam zu aktivieren und diese dann mit einmal zu formatieren. Auch so kann man die Zugriffe auf das Tabellenblatt minimieren.
Echt wieder schönes Video! Vielen Dank auf jeden Fall vorab! Ich habe auch erstmal direkt die Syntaxprüfung ausgeschaltet. Es passiert einfach zu oft, dass man während des Befehls nochmal rum scrollt oder per copy paste irgendwelche Code-Teile einfügen möchte...da ist das schon nervig, das immer diese Meldung kommt. Haltepunkte und F8 mache ich auch immer eigentlich um eben meine Variablen im Blick zu haben und Fehler die nicht zu Fehlermeldungen führen zu finden. Und auch mit Events arbeite und spiele ich im Moment gern :D Nur mit Arrays habe ich noch nciht so viel zu tun gehabt, weil ich einfach noch nicht so die Anwendungen dafür hatte bzw. die Datenmassen.
Jap, kenn dein Video mit dem Vergleich auch. ^^ Aktuell nur arbeite ich mit einer großen Excel Tabelle zur Übersicht meiner Fälle, da muss ich halt nicht zeilenweise Operationen machen sondern aktualisiere mal, mal dort. Beschäftige mich daher eher mit Pivot zur Auswertung bzw Statistik. 😁
Ich habe mit großem Interesse einige deiner Videos angeschaut und sehr viele gute Tipps entdeckt. Mich würde interessieren, ob es irgendwo eine Zusammenfassung all dieser informativen Videos gibt.
Sehr schönes Video, Kai. Wie immer. Ich hab aber noch zwei Fragen: Lohnt sich Visual Studio als ide für die fortgeschrittenere Anwendung von VBA? Kannst du eventuell auch was zu VBA in Access machen?
Hallo Maximilian, freut mich, dass dir das Video gefällt! Ich empfehle Rubberduck für eine fortgeschrittene IDE. Access nutze ich hauptsächlich als Backend. LG Kai
Hei Kai, wie immer ein super Video!! Kurze Frage: wenn ich einen Fehler in einer Sub() oder Function() habe, wird lediglich die Zeile des Methodenaufrufs als Fehler gelb markiert, jedoch nicht die Zeile, in der wirklich der Fehler auftritt. Wie findet man die Zeile, in der der Fehler auftritt? F8 ist keine Option, da der Code zu groß ist und das zu lange dauern würde… Vielen Dank dir!❤
Ich nutze auch Tools zur automatischen Codeeinrückung im vba Editor (hab mztools gibt aber auch Webseiten dazu) . Auch das ist sehr nützlich. Oder das ändern der Oberfläche um eine Art Dark Mode im Editor zu erhalten.
Das Thema mit Arrays und Range kenne ich schon lange, aber ich habe häufig Probleme, die Funktionen für Rangeobjekte auch für Arrays nutzbar zu machen. Bspw. Sortieren einer beliebig großen Zahl an Elementen in 2D-Arrays. In einer Anwendung erzeuge ich sehr viele Zeilen gleicher Länge (aber theoretisch kann die Länge bei jeder Ausführung des Makros beliebig sein). Dann sortiere ich die Werte pro Zeile nach der Größe, lösche doppelte Werte heraus und sortiere dann die Zeilen nach dem Wert der ersten, dann zweiten etc. Zelle. Das dauert u.U. ziemlich lange, aber ich habe noch keine schlaue Lösung gefunden, um das mit Arrays zu lösen.
Hallo Rumo, ja, tatsächlich gibt es einige Funktionen bei Arrays nicht, die mit einer Range leichter sind. Ich habe mir dafür eine Code Bibliothek gebaut, die ich in Zukunft evtl. auch veröffentliche. Bis dahin schreibe ich mir Array sortieren mal als Videoidee auf. LG Kai
Hallo und vielen Dank für die Tipps. Den Makrorecorder benutze viel und passe aber den Code an, zu Teil lasse ich natürlich unnützes stehen. Die Syntaxprüfung hatte ich bis eben noch an. Dankeschön das habe ich sofort umgestellt. In den vielen Jahren, habe ich soviel dazu gelernt, dass ich nix mehr wie am Anfang machen würde (von Variablen definieren bis Select der Objekte und Loop über Bereiche, Array ist da echt TOP. Dein Kanal habe ich erst vor ein paar Wochen gefunden und schon sehr viel neues erfahren. Dankeschön. Die andere 3 Tipps habe ich mir gemerkt.
hallo, ich habe den code getestet. wenn ich den dateipfad kopeiere und einfüge funzt es. wenn ich andere csv datei nehme funzt nicht, außer ich ändere den csv-namen im vba
Hallo Kai, ich habe eine Spalte in einer dynamischen Tabelle, in welcher mehrere positive und negative Eurobeträge stehen. Wie kann ich mit VBA die negativen Beträge eine Spalte nach rechts verschieben? VG Frank Übrigens: Deine Video´s sind einfach Klasse....
Hallo Kai, ich habe es mit einer einfachen Formel | =WENN([@Betrag]>0;[@Betrag];"") für positive Werte, für negative Werte < | gelöst, stand halt bisschen auf dem berühmten Schlauch, eine VBA-Lösung(Schleife?) würde mich trotzdem interessieren....
@@frankklein1915 Moin, einfach ein 2-dimensionales Array erstellen, die Daten mit einer Schleife einlesen und je nach Wert in die entsprechenden Spalte des Arrays schreiben. Dieses dann als ein Element dann ins Tabellenblatt ausgeben.
Ich habe so ziemlich, seit es Excel überhaupt gibt (zuvor nutzte ich Multiplan), Excel ohne VBA unterrichtet. Dazwischen hatte ich fürs Rechnungswesen umfangreiche Anwendungen erstellt. (vieles hatte ich im letzten Jahr mit Excel Power Pivot BI nochmal neu aufgebaut.) Nachdem ich nun Deine Videos entdeckt habe, finde ich, jeder, der VBA lernen will. Sollte zuvor Deine Videos anschauen. Man bekommt einen ganz anderen Zugang zu den Excel Objekten, ein ganz anderes Verständnis. Mich beschäftigt derzeit eine Frage. Angenommen, ich habe eine große Tabelle. Und möchte schnell, ohne eine Schleife auf bestimmte Zeilen zugreifen. Kann ich dazu Arrays nutzen um den Suchvorgang zu verkürzen oder sprengt das ganz schnell meinen Speicher? Gruß aus Danzig!
Moin, Arrays bringen fast nur beim Schreiben von Daten in diesem Zusammenhang Vorteile. Der Lesezugriff ist weniger das Problem. Aber es macht keinen Sinn, die Daten erst in ein Array einzulesen, um dann darüber zu schleifen. Das könntest du auch in der Range, da gibt es aber dann zusätzlich die Funktion „Range.Find“, die es einfacher macht, die richtige Zelle und damit Zeile zu finden. Aus dem Array findest du die Daten nur über Schleifen. Wenn es im Arbeitsspeicher stattfinden soll, kann man auch das Dictionary verwenden, dort kann man abfragen, ob die Daten vorhanden sind. Das ist aber deutlich aufwendiger zu handhaben und es ist nicht auf Einsteigerebene zu empfehlen.
Servus! Ich bräuchte bitte Hilfe bei einem Vba Code. Es geht darum, in Word eine Schaltfläche zu generieren. Im Inhalt soll das Makro das jeweilig geöffnete Dokument in einem vordefinierten Ordner abspeichern. Somit würde das Makro nicht im .doc, sondern auf der Wordoberfläche liegen. Vielleicht hättest du einen Tipp. Es würde den morgigen Arbeitsablauf beschleunigen und ... Vielen Dank vor ab und LG aus Österreich
Servus! Es ist noch unklar. Das Problem ist, dass du in Format ". doc" (oder docx) mit einer Button abspeichern möchtest, gel? Aber das Macro speichert eben anders ab?
wobei WordVar - eine deklarierte Objekt-Variable, die mit New - Anweisung zugleich das Word- Objekt erstellt wird; DateiPath - ein Speicherort + ein Name der jeweiligen Datei.
Dabei muss der jeweilige Dokument aktiviert werden, sonst ist WordVar mit allen geöffneten Dokumenten zu adden. Und dann wird das jeweilige Dokument durch WordVar.Documents () angesprochen. Also, WordVar.Documents ().SaveAs2... WordVar und DateiPath sind selbstverständlich anders benennen zu können.
Hallo Kai!
Du erklärst auch für mich als ziemlichen Anfänger sehr gut und nachvollziehbar. Mach weiter so! Vielen Dank für Deine Mühe!
Vielen Dank für dein nettes Kommentar.
Deinen Kanal hätte ich gerne gekannt als ich angefangen habe mit VBA zu arbeiten.
Habe wegen diesem Kanal angefangen…🙏🏻
Und jetzt - ein Profi? 😏
Danke euch allen :)
Die "Automatische Syntaxüberprüfung" auf AUS... vielen Dank dafür. :)
Hallo Marek, sehr gut :) LG Kai
Wieder ein sehr interessantes Video, vielen Dank! Die automatische Syntaxüberprüfung, bzw. die Abschaltung, hatte ich noch nicht auf dem Schirm!
Hallo Helmi, danke für dein Feedback. Ja, das ist eine sehr gute Erweiterung!
Die Syntaxüberprüfung hat mich schon sehr, sehr genervt. Nun abgestellt, danke 🙃
Hallo Beate, ja, so ging es mir auch. Danke für das Feedback :)
Hallo Kai,
ich habe mittler weilen schon sehr viele Videos von Dir angeschaut und Sie sind alle sehr interessant. Ich stehe mit VBA noch ganz am Anfang, bin zufällig durch ein Video von Dir darauf gekommen. Jetzt muss ich erst mal schauen wie ich als blutiger Anfänger, alles Stück für Stück mir merke und dann umsetzte zu dem, was ich vorhabe.
Mache mit Deinen Videos weiter so, Sie sind sehr hilfreich.
Und Du erklärst das mit deiner ruhigen Stimme, so dass man es nachverfolgen kann.
Schönes Wochenende
LG Dirk
Vielen Dank für dein nettes Kommentar.
Viel Erfolg beim VBA lernen.
Super Beitrag, wenn ich auch schon fast alle Tipps gekannt habe, finde ich trotzdem, dass du - in Deinen Videos - die Problemlösungen immer sehr gut (kurz und knapp, aber trozdem verständlich) erklärst!
Danke für das Lob!
Verständliches Video, Danke dafür!
Was mir fehlte bei vden Haltepunkten war debug.assert, welches automatisch das Skript stoppt, wenn eine Bedingung (nicht) erfüllt wird.
Danke für den Hinweis.
Hallo Kai du erklärst es sehr gut
Freut mich. Danke für dein Feedback!
Hallo und vielen Dank für die Tipps. Den Makrorecorder benutze schon öfters mal 😉 und möchte ihn auch nicht Missen. Allerdings dünne ich den Code dann in der Tat auf das nötigste aus. Die Syntaxprüfung hatte ich bis eben noch an. 😉😀. Anfangen mit VBA würde ich heute wohl auch ganz anders, aber das würden wohl die meisten. Dein Kanal ist jedenfalls immer eine Bereicherung und ich schaue auch immer mal wieder die älteren Videos erneut an.
Hallo Matt, vielen Dank für deinen anhaltenden Support. Der Makrorekorder ist auch kein Problem, wenn du den Code nicht 1 zu 1 übernimmst. Freut mich sehr, dass dir die Videos so gut gefallen, dass du sie auch mehrmals anschaust. LG Kai
Kai, du bist einfach spitze! Danke für deinen Kontent.
Danke für das Lob!
Kannte nur den 4. Punkt. Wie immer sehr hilfreich. Vielen Dank und beste Grüße Klaus
Hallo Klaus, vielen Dank für dein Feedback und es freut mich, dass ich noch neue Dinge einbringen konnte! Beste Grüße Kai
Danke für die Tipps! Neu für mich sind die Events und Ereignisse.
Hallo Andreas, danke für dein Feedback! LG Kai
Der Tipp zum Abschalten der Syntaxprüfung war gut. Aber auch Array statt Range werde ich zukünftig beherzigen. Weiter so, deine Videos sind Klasse!
Danke für die Tipps
Diese nervige VBA-Meldung bin ich Dank Dir endlich los geworden. Ist mir bei Deinen ganzen Videos schon öfters aufgefallen,
daß da keine Meldung aufpoppt, wenn die Anweisung unvollständig ist und Du woanders hinklickst.
Von daher hatte ich da bereits nach gesucht und die Option auch gefunden ;-)
Manche Einstellungen sind schon so alt bei mir, dass ich vergesse, dass sie nicht der Standard sind. Das ist aber auf jeden Fall eine der nervigsten Sachen! LG Kai
Du wolltest wissen, welchen Tipp ich noch nicht kannte und ich demnächst umsetzen werde. Verdammt nochmal alle !!!!!!!!! Danke Meister !!!!!! 🙏😊
Hallo Matthias, danke für das super Lob :) LG Kai
Viel Viel Dank, wie immer super genau und einfach erklärt. Respekt.
Danke für das Lob!
Vielen Dank für die schöne Beschreibung. Ich werde alle zukünftige Tipps nutzen.
Sehr gerne. Freut mich!
Wieder ein sehr informatives Video… große Klasse
Freut mich, dass es dir weiterhelfen konnte! LG Kai
Ich trage mal meine VBA-Lebensgeschichte bei.
Ich habe mit Excel 3.0 angefangen und bin nur zufällig auf den Makro-Rekorder gestossen. Den fand ich sehr hilfreich. Damals (ca. 1995) gab es für mich schon Internet, aber keine Support-Foren.
Als ich es dann mit grösseren Datenmengen zu tun hatte, war mir das ewige Geflimmere lästig und ich habe F1 bemüht, die mir super weitergeholfen hat.
An diesem Punkt habe ich gemerkt, dass es eine wesentlich grössere Welt jenseits des Makro-Rekorders gibt. Ich fand es schon spannend, dass man Message-Boxen aufplatzen lassen konnte und dass ich überhaupt Eingabemasken gestalten konnte.
Viele Jahre später erst - da habe ich auch erste Erfahrungen mit Visual Basic gemacht - habe ich mich mit Objekten angefreundet.
Heute muss ich leider sagen: ich stehe immer noch auf Kriegsfuss mit Klassen, aber das ist eher ein Thema von Visual Studio. Da habe ich den Anschluss verloren.
Mein Lebensfazit: Mein Fehler war, mich auf den Helpdesk/Support zu konzentrieren. Das ist heutzutage zur Studenten-Sklavenarbeit verkommen. Ich hätte mich mit 30 auf VBA/VS verlegen müssen. Das hole ich nicht mehr auf.
Insofern beneide ich dich positiv, lieber Kai. Du hast mit deiner ruhigen und zielgerichteten Art eine wunderbare Nische gefunden.
Hallo, vielen Dank, dass uns deine VBA-Lebensgeschichte mit uns teilst. Das klingt bewegt und sehr interessant! Vielen Dank auch für die netten Worte. LG Kai
Vielen Dank für deine Tipp´s!
Gerne Gerd!
Hallo Kai, erst einmal recht vielen Dank für deine Email, ja diese Tipps sind echt hilfreich und ich hoffe nur, dass ich sie irgendwann ohne deine Hilfe auch benutzen kann🙃 auf jden Fall habe ich dank deiner unermüdlichen Hilfe schon einiges gelernt.
Wünsche dir weiterhin viel Erfolg und bleib gesund.👍
Interessantes Video. Ich hatte (vor knapp 20 Jahren) mit VBA unter Access begonnen. Als Makro hatte ich meiner Erinnerung nach damals lediglich mal Autoexec verwendet, um ein Formulare beim Start der DB zu öffnen. Es hatte aber nicht lange gedauert, bis ich mich komplett auf den VBA-Editor beschränkte. Das Startformular konnte man ja auch in den Datenbankeinstellungen festlegen.
Ich gebe aber zu, den Assistenten für die Befüllung von Dropdown-Feldern oder Listen-Elementen gern verwendet - um nicht zu sagen *geliebt* - zu haben.
Mit Haltepunkten hatte ich eigentlich nie gearbeitet. Übrigens fehlte mir vor ein paar Tagen, als ich mit Excel-VBA (wieder) eingestiegen bin, genau diese schrittweise Abarbeitung des Code (F8). 🤭 Vielen Dank für den Tip! 😃
Ich kannte die letzten 3 bisher noch nicht ich schau atm noch Deine anderen Videos und muss sagen ich kannte bisher vieles davon nicht. Aber ja der Macro Recoder ^^ war auch bei am anfang schnell vom Tisch.
Finde deine Videos Hervorragend und vorallem was ich bei vielen vermisse ist deine deutliche ausdrucksweise und sehr gute Erklärungen, und ich muss sagen alles was ich bisher nicht verstanden habe wurde dadurch verständlich.
Hoffe Daher du machst noch lange diese Videos.🥰
Muss dazu auch sagen was bei dir anders ist, hab auch Videos von anderen geschaut .. auch Online Schulungen da wahren die Duzenten so Motiviert beim Reden das ich Eingeschlafen bin. 🤣
Vielen Dank für dein Lob.
Alles Gute beim VBA-Lernen!
Hi , ich liebe deine Videos. Arrow kannte ich noch nicht werde ich auf alle Fälle bei meinem nächsten Projekt ausprobieren. Danke für deine gut erklärten Videos. LG dory
Hi, Tipp 2 - die Fehlermeldungen haben mich immer genervt; jetzt weiß ich, wie ich die abstelle. Tipp 3: Da bin ich gerade dabei, das zu lernen. Tipp 5, letztes Beispiel: Super. Das werde ich als nächstes in meinen Mappen umsetzen. Danke vielmals.
Hallo Christian, freut mich, dass dir die Tipps geholfen haben! LG Kai
Hallo Kai,
wie immer ein tolles Video.
VBA lernen wäre deutlich einfacher gewesen, wenn ich von Anfang an Deinen tollen Kanal als Hilfestellung gehabt hätte.
LG Matthias
Hallo Matthias, vielen Dank für diesen netten Kommentar! LG Kai
vielen Dank,immer wieder guter Content...ich arbeite mit allen 5 Tips,
den Tip mit den arrays kenn ich aber erst von deinem Kanal...:-)
Gerne :) Freut mich, dass dir der Array Tip helfen konnte!
Gerne part 2 🙃 oder praktische shortcuts/Tricks für vba
Danke für das Video.
Die Verwendung von Arrays anstatt Range werde ich mir mal genauer anschauen. Allerdings bedeutet das für mich wohl einiges an Refactoring 😱
Freut mich, dass dir das Video gefällt! Das kann auf jeden Fall Sinn machen, um den Code schneller zu machen. LG Kai
Hallo Kai, richtig super…
Gerne :)
Hallo, Kai, danke für die nützlichen und nämlich berufsbezogenen Tipps. Trotzdem füge ich zum Thema auch einen Tipp hinzu: bei außendienstlichem Lernen der VBA-Sprache ist die Option "Automatische Syntaxüberprüfung" doch nicht auszuschalten, damit der Lernende das aufmerksame Programmierungsverfahren erarbeiten können würde, was ebenso ganz wichtig ist. 😏
Freut mich, dass dir die Tipps gefallen. Danke für die Ergänzung! LG Kai
ich liebe deine videos, schaue diese regelmäßig--- kannst du nochmal ein video zu den arrays machen? Vielleicht Array erstellen und dann in verbindung mit for next / If then schleifen? ich würde das mit den arrays gerne nochmal an einem zweiten beispiel sehen
Hallo Andreas, es freut mich sehr, dass dir meine Videos gefallen. Ich habe deine Videoidee aufgenommen. Falls dazu mehrere Anfragen kommen, erstelle ich ein Video. LG Kai
@@KaiWeissmann ja das Thema Arrays finde ich auch interessant. Ich würde gern Eigenschaften von Zellen ändern, z.B. Farben, Rahmen, Schrift. Lässt sich so etwas auch realisieren? Oder kann ich mit Arrays nur Werte auslesen und zurückschreiben? Danke für Deine Zeit! Ich feiere Deine Videos!
@@andyr.459 Moin, die Nutzung eines Arrays bezeigt sich in diesem Fall eher darauf, dass die Anzahl der Schreibzugriffe auf das Arbeitsblatt reduziert wird. Die Ausgabe des Arrays in das Arbeitsblatt ist einmaliges Schreiben, die Schleife mit Anpassung der Werte ist das Schreiben für jede Zelle einzeln.
Das Formatieren ist damit aber nicht mit Arrays direkt lösbar. Was aber möglich ist, verschiedene Zellen gemeinsam zu aktivieren und diese dann mit einmal zu formatieren. Auch so kann man die Zugriffe auf das Tabellenblatt minimieren.
Eigentlich alle, insbesondere Tipp 2, Automatische Syntaxprüfung aus! Danke für die Tipps
Echt wieder schönes Video! Vielen Dank auf jeden Fall vorab!
Ich habe auch erstmal direkt die Syntaxprüfung ausgeschaltet. Es passiert einfach zu oft, dass man während des Befehls nochmal rum scrollt oder per copy paste irgendwelche Code-Teile einfügen möchte...da ist das schon nervig, das immer diese Meldung kommt. Haltepunkte und F8 mache ich auch immer eigentlich um eben meine Variablen im Blick zu haben und Fehler die nicht zu Fehlermeldungen führen zu finden. Und auch mit Events arbeite und spiele ich im Moment gern :D Nur mit Arrays habe ich noch nciht so viel zu tun gehabt, weil ich einfach noch nicht so die Anwendungen dafür hatte bzw. die Datenmassen.
Freut mich, dass dir das Video gefällt. Ja, Arrays machen hauptsächlich Sinn, wenn du merkst, dass dein Code viel Zeit benötigt. LG Kai
Jap, kenn dein Video mit dem Vergleich auch. ^^
Aktuell nur arbeite ich mit einer großen Excel Tabelle zur Übersicht meiner Fälle, da muss ich halt nicht zeilenweise Operationen machen sondern aktualisiere mal, mal dort. Beschäftige mich daher eher mit Pivot zur Auswertung bzw Statistik. 😁
Ich habe mit großem Interesse einige deiner Videos angeschaut und sehr viele gute Tipps entdeckt.
Mich würde interessieren, ob es irgendwo eine Zusammenfassung all dieser informativen Videos gibt.
Auch ich würde zu den array nochmal genauere Informationen gern haben. LG dory
Da freue ich mich doch auch sehr, dass ich künftig die automatische Systaxprüfung ausschalten werde... 😂
Sehr schönes Video, Kai.
Wie immer.
Ich hab aber noch zwei Fragen: Lohnt sich Visual Studio als ide für die fortgeschrittenere Anwendung von VBA?
Kannst du eventuell auch was zu VBA in Access machen?
Hallo Maximilian, freut mich, dass dir das Video gefällt!
Ich empfehle Rubberduck für eine fortgeschrittene IDE.
Access nutze ich hauptsächlich als Backend.
LG Kai
Hallo Kai, Punkt 5 würde mich im Detail genauer interessieren, also der exacte Code wie man in dem zusätzlichen Popup die Suchroutine schreibt. LG
Hallo, dazu habe ich hier ein Video gemacht: th-cam.com/video/GkzXUKUxwUs/w-d-xo.html LG Kai
Hei Kai, wie immer ein super Video!!
Kurze Frage: wenn ich einen Fehler in einer Sub() oder Function() habe, wird lediglich die Zeile des Methodenaufrufs als Fehler gelb markiert, jedoch nicht die Zeile, in der wirklich der Fehler auftritt. Wie findet man die Zeile, in der der Fehler auftritt? F8 ist keine Option, da der Code zu groß ist und das zu lange dauern würde…
Vielen Dank dir!❤
Am besten Haltepunkte setzen und den Code mit F5 durchsuchen. LG Kai
Ich nutze auch Tools zur automatischen Codeeinrückung im vba Editor (hab mztools gibt aber auch Webseiten dazu) . Auch das ist sehr nützlich. Oder das ändern der Oberfläche um eine Art Dark Mode im Editor zu erhalten.
Hey, vielen Dank für diese Tool-Empfehlung. Schaue ich mir direkt mal an. LG Kai
Das Thema mit Arrays und Range kenne ich schon lange, aber ich habe häufig Probleme, die Funktionen für Rangeobjekte auch für Arrays nutzbar zu machen. Bspw. Sortieren einer beliebig großen Zahl an Elementen in 2D-Arrays. In einer Anwendung erzeuge ich sehr viele Zeilen gleicher Länge (aber theoretisch kann die Länge bei jeder Ausführung des Makros beliebig sein). Dann sortiere ich die Werte pro Zeile nach der Größe, lösche doppelte Werte heraus und sortiere dann die Zeilen nach dem Wert der ersten, dann zweiten etc. Zelle. Das dauert u.U. ziemlich lange, aber ich habe noch keine schlaue Lösung gefunden, um das mit Arrays zu lösen.
Hallo Rumo, ja, tatsächlich gibt es einige Funktionen bei Arrays nicht, die mit einer Range leichter sind. Ich habe mir dafür eine Code Bibliothek gebaut, die ich in Zukunft evtl. auch veröffentliche. Bis dahin schreibe ich mir Array sortieren mal als Videoidee auf. LG Kai
@@KaiWeissmann Das wäre echt hilfreich. Ich bin gespannt, was du mir auf deinem Kanal noch so beibringst. 😃
Hallo und vielen Dank für die Tipps. Den Makrorecorder benutze viel und passe aber den Code an, zu Teil lasse ich natürlich unnützes stehen. Die Syntaxprüfung hatte ich bis eben noch an. Dankeschön das habe ich sofort umgestellt. In den vielen Jahren, habe ich soviel dazu gelernt, dass ich nix mehr wie am Anfang machen würde (von Variablen definieren bis Select der Objekte und Loop über Bereiche, Array ist da echt TOP. Dein Kanal habe ich erst vor ein paar Wochen gefunden und schon sehr viel neues erfahren. Dankeschön. Die andere 3 Tipps habe ich mir gemerkt.
Hallo Kai,
ListBox_DblClick hätte ich gerne schon viel früher gekannt, da in Normalen Listenfeldern nur 8 Zeilen zu sehen sind.
Danke
hallo, ich habe den code getestet. wenn ich den dateipfad kopeiere und einfüge funzt es. wenn ich andere csv datei nehme funzt nicht, außer ich ändere den csv-namen im vba
Hallo Kai, ich habe eine Spalte in einer dynamischen Tabelle, in welcher mehrere positive und negative Eurobeträge stehen. Wie kann ich mit VBA die negativen Beträge eine Spalte nach rechts verschieben? VG Frank Übrigens: Deine Video´s sind einfach Klasse....
Hallo Kai, ich habe es mit einer einfachen Formel | =WENN([@Betrag]>0;[@Betrag];"") für positive Werte, für negative Werte < | gelöst, stand halt bisschen auf dem berühmten Schlauch, eine VBA-Lösung(Schleife?) würde mich trotzdem interessieren....
@@frankklein1915 Moin, einfach ein 2-dimensionales Array erstellen, die Daten mit einer Schleife einlesen und je nach Wert in die entsprechenden Spalte des Arrays schreiben. Dieses dann als ein Element dann ins Tabellenblatt ausgeben.
Ich habe so ziemlich, seit es Excel überhaupt gibt (zuvor nutzte ich Multiplan), Excel ohne VBA unterrichtet. Dazwischen hatte ich fürs Rechnungswesen umfangreiche Anwendungen erstellt. (vieles hatte ich im letzten Jahr mit Excel Power Pivot BI nochmal neu aufgebaut.) Nachdem ich nun Deine Videos entdeckt habe, finde ich, jeder, der VBA lernen will. Sollte zuvor Deine Videos anschauen. Man bekommt einen ganz anderen Zugang zu den Excel Objekten, ein ganz anderes Verständnis.
Mich beschäftigt derzeit eine Frage. Angenommen, ich habe eine große Tabelle. Und möchte schnell, ohne eine Schleife auf bestimmte Zeilen zugreifen. Kann ich dazu Arrays nutzen um den Suchvorgang zu verkürzen oder sprengt das ganz schnell meinen Speicher? Gruß aus Danzig!
Moin, Arrays bringen fast nur beim Schreiben von Daten in diesem Zusammenhang Vorteile. Der Lesezugriff ist weniger das Problem. Aber es macht keinen Sinn, die Daten erst in ein Array einzulesen, um dann darüber zu schleifen. Das könntest du auch in der Range, da gibt es aber dann zusätzlich die Funktion „Range.Find“, die es einfacher macht, die richtige Zelle und damit Zeile zu finden. Aus dem Array findest du die Daten nur über Schleifen.
Wenn es im Arbeitsspeicher stattfinden soll, kann man auch das Dictionary verwenden, dort kann man abfragen, ob die Daten vorhanden sind. Das ist aber deutlich aufwendiger zu handhaben und es ist nicht auf Einsteigerebene zu empfehlen.
Tipp 2 direkt umgesetzt: Keine nervige Syntax Errors mehr :D
Super!
Es freut mich, dass du gleich etwas umsetzen konntest.
Viel Erfolg bei deinen Projekten.
Servus! Ich bräuchte bitte Hilfe bei einem Vba Code. Es geht darum, in Word eine Schaltfläche zu generieren. Im Inhalt soll das Makro das jeweilig geöffnete Dokument in einem vordefinierten Ordner abspeichern. Somit würde das Makro nicht im .doc, sondern auf der Wordoberfläche liegen.
Vielleicht hättest du einen Tipp. Es würde den morgigen Arbeitsablauf beschleunigen und ... Vielen Dank vor ab und LG aus Österreich
Servus! Es ist noch unklar. Das Problem ist, dass du in Format ". doc" (oder docx) mit einer Button abspeichern möchtest, gel? Aber das Macro speichert eben anders ab?
Am Schnellsten geht's, wenn du das Makro in der normal.dotx speicherst und über die Schnellstartleiste aufrufst.
@@TheShadowOfYours Ich möchte es als Script schreiben. Der Ansatz mit normal.docx ist schon gut!
@@m.unzufrieden9624 Danke. Das hilft und ist eine Idee! Bin aber noch auf der Suche nach dem Script
@@anibunny9917 Dim WordVar As New Word.Application
WordVar.ActiveDocument.SaveAs2 DateiPath, WdSaveFormat.wdFormatDocumentDefault
wobei WordVar - eine deklarierte Objekt-Variable, die mit New - Anweisung zugleich das Word- Objekt erstellt wird;
DateiPath - ein Speicherort + ein Name der jeweiligen Datei.
Dabei muss der jeweilige Dokument aktiviert werden, sonst ist WordVar mit allen geöffneten Dokumenten zu adden.
Und dann wird das jeweilige Dokument durch WordVar.Documents () angesprochen. Also, WordVar.Documents ().SaveAs2... WordVar und DateiPath sind selbstverständlich anders benennen zu können.
Definitv die Arrays,
Ich kannte diese Tipps alle nicht. Hast du alle deine Erfahrungen aus der Praxis?
Ja klasse....besonders Tipp Nr. 2. Einfach nervig, die automatische Syntaxüberprüfung.
Ja, sehe ich genauso. Super, dass dir das weiterhilft :)
Ich habe noch nie die array benutzt
Hallo Pierre, danke für dein Feedback :)
Mein Tipp:
Hör auf, dir die Finger blutig zu tippen.
Keiner deiner Kommentare ist nötig, weil der Kode so simpel ist, daß ihn jeder Depp begreift.