VBA-Beispiele > Excel > Makros: Arbeit mit der Tabelle

Tipp 559: Werte einiger Zellen nicht drucken

Wie kann ich erreichen, dass die Werte bestimmter Zellen nicht gedruckt werden?


Indem man einfach die Schriftfarbe auf die Hintergrundfarbe setzt. Diese Routine setzt die Schriftfarbe der festgelegten Zellen auf die Hintergrundfarbe, druckt und setzt die Schriftfarbe wieder zurück:

[Einzellink]

Tipp 556: Hochkomma entfernen

In einem größeren Bereich befinden sich vor den Zahlen Hochkommas, so dass mit den Zahlen nicht gerechnet werden kann. Wie kann man die Hochkommas entfernen?


Range("IV10000") ist eine beliebige Hilfszelle.

[Einzellink]

Tipp 552: Per VBA Sudoku-Rätsel mit 81 Feldern erstellen

Wie kann man per VBA auf einem Tabellenblatt ein Sudoku-Rätsel erstellen?


Hier ist ein Ansatzpunkt, der sicher noch zu verbessern geht:

Eine Datei dazu finden Sie in den Beispieldateien (sudoku.zip)

[sudoku.zip (19.98 KB)] [Einzellink]

Tipp 123: Uhrzeit ohne Doppelpunkt eingeben

Ein Datum kann man auf der Nummerntastatur mit einem Minus eingeben: 12-10-99 für den 12.10.99. Geht das auch mit der Uhrzeit und wie?


Eine Lösung per Zahlenformatierung (00":"00) ist nicht empfehlenswert. Die Zahlen sehen zwar wie Uhrzeiten aus, ein Weiterrechnen mit diesen "Zeiten" ist aber nicht möglich. Besser ist eine Makrolösung, die automatisch eine eingegebene Zahl in eine Uhrzeit umwandelt.

Das folgende Makro wird eingegeben, nachdem im Editor auf die Tabelle doppelgeklickt wurde, auf der es wirksam werden soll.

Eine Datei dazu finden Sie in den Beispieldateien (zeit_doppelpunkt.zip)

[zeit_ohne_doppelpunkt.zip (17.63 KB)] [Einzellink]

Tipp 160: Zelleinträge trennen

In einem Zellbereich stehen in den einzelnen Zellen Vor und Nachnamen. Wie kann ich diese Einträge trennen, so dass in einer Zelle der Vor- und in der Nachbarzelle der Nachname erscheint?


Das folgende Makro löst diese Aufgabe. Voraussetzung ist, dass der Bereich, der die Daten enthält, markiert ist. Vor der Ausführung sollte hinter der Spalte mit den Daten eine neue Spalte eingefügt werden.

Es ist mit dieser Methode auch möglich, mehr als 2 Wörter, die mit Leerzeichen getrennt sind, in die Nachbarzellen zu übertragen. Sollten in nebenstehenden Zellen Daten stehen, muss man vor der Ausführung des Befehls darauf achten, entsprechend viele Spalten einzufügen.

[Einzellink]

Tipp 122: Zellbezug in Fußzeile

Habe ich eine Möglichkeit, einen Zellbezug in die Kopf-/Fußzeile einzugeben? Z. B. in der Fußzeile soll immer der aktuelle Inhalt der Zelle A1 stehen?


[Einzellink]

Tipp 158: Farbnummern anzeigen

Wie kann ich die Excel-Farbnummern auflisten lassen?


Dieses Makro fügt die Nummern in Spalte E ein und "färbt" in der Spalte F.

[Einzellink]

Tipp 159: Zellaktivierung: Wert in andere Zelle

Wenn ich eine Zelle aktiviere, soll der Wert aus Spalte B der Zeile der aktiven Zelle in E2 eingelesen werden.


Im VBA-Editor auf die Tabelle doppelklicken, auf der das Makro wirksam werden soll, und folgendes Makro eingeben:

[Einzellink]

Tipp 154: Wert aus B1 in erste leere Zelle eines anderen Blattes

Der Wert einer Eingabezelle B1 auf Sheet 1 soll per Makro in eine wachsende Liste auf Sheet 2 kopiert werden. Hierzu soll die erste freie Zelle in Spalte D gesucht werden und dort der Wert eingesetzt werden. Wie kann ich in diesem Kopiervorgang die variable Adressierung festlegen?


[Einzellink]

Tipp 155: Zellbearbeitung aktivieren

Wie kann ich per Makro die Zellbearbeitung aktivieren, so daß der Cursor in der Zelle blinkt?


[Einzellink]

Tipp 156: 10 Zufallszahlen generieren

Wie kann ich untereinander 10 Zufallszahlen generieren, ohne daß Wiederholungen auftreten?


[Einzellink]

Tipp 157: Ungerade Spalten ausschließen

Wie kann ich bei der Änderung einer Auswahl in den Spalten 3 bis 49 abfragen, ob es sich um eine ungerade Spalte handelt?


Dieses Makro dem Blatt zuordnen (Doppelklick im Editor auf das Blatt). Es fragt ab, ob es sich bei der ausgewählten Spalte um eine Spalte handelt, bei deren Division durch 2 der Rest 1 ergibt.

[Einzellink]

Tipp 150: Zeilen mit 1 löschen

Wie kann ich die Zeile löschen, wenn sich in Spalte A eine 1 befindet?


Erste Möglichkeit:

Zweite Möglichkeit:

[Einzellink]

Tipp 151: Schrift in Kombinationsfeld

Wie kann ich Schriftart, -größe usw eines Kombinationsfeldes aus der Steuerelement-Toolbox ändern?


Das Kombinationsfeld im Entwurfsmodus mit rechts anklicken und Eigenschaften auswählen. Im daraufhin erscheinenden Eigenschaftenfenster findet man die Eigenschaft Font. Hier können die Änderungen vorgenommen werden.

[Einzellink]

Tipp 152: Blattnamen durch Klick auf Kombinationsfeld einfügen

Wie kann ich auf einem Blatt ein Kombinationsfeld erstellen, in dem die Namen der Blätter enthalten sind? Durch Klick in das Kombinationsfeld soll der angeklickte Name in A1 erscheinen.


  1. Symbolleiste Steuerelement-Toolbox einblenden
  2. Schaltfläche Kombinationsfeld anklicken
  3. Kombinationsfeld zeichnen
  4. Doppelklick auf das Feld, dadurch wird der VBA-Editor geöffnet
  5. folgenden Code eingeben (Zelle anpassen):
  6. Entwurfsmodus durch Klick auf linke Schaltfläche verlassen
  7. zum Editor wechseln (ggf. mit Alt und F11)
  8. Menü Einfügen - Modul
  9. folgendes Makro eingeben (dient zum Füllen des Kombinationsfeldes):

Durch den Aufruf des Makros Fuellen wird das Kombinationsfeld gefüllt; nach der Auswahl eines Blattes erscheint dessen Name im Beispiel in A1.

[Einzellink]

Tipp 153: Bei Eingabe Datum eintragen

Wie kann ich erreichen, daß bei einer Eingabe in Zeile 2 automatisch das Datum in Zeile 1 eingefügt wird?


  1. Mit Alt und F11 in den VBA-Editor wechseln,
  2. im Projekt-Explorer auf die Tabelle doppelklicken, in der die Eingaben vorgenommen werden,
  3. folgendes Makro eingeben:

[Einzellink]

Tipp 149: Zellinhalt als Blattname

Wie kann ich das Blatt nach dem Inhalt der Zelle A5 benennen?


[Einzellink]

Tipp 147: Nicht geschützte Zellen suchen

Ich habe die Arbeitsblätter geschützt. Teilweise sind die Zellen aber ungeschützt. Ich würde gerne einfach die Tabelle markieren und dann im VBA die Werte aller ungeschützten Zellen löschen ohne genaue Bezüge angeben zu müssen. Da gibt es doch sicher eine Möglichkeit, die Zelleigenschaft zurückzugeben, und dann mit einer Schleife oder irgendwie anders die Werte zu löschen?


Die gesamte Tabelle nach ungeschützten Zellen durchsuchen zu lassen würde sicher zu lange dauern. Besser ist es, den Bereich, der durchsucht werden soll, einzugrenzen und dann in einer verschachtelten Schleife alle Inhalte ungeschützter Zellen zu löschen. Das Makro wäre dann:

[Einzellink]

Tipp 124: Vornamen und Nachnamen trennen

In einem markierten Bereich befinden sich in jeweils einer Zelle Vornamen und Nachnamen, die durch Leerstellen getrennt sind. Wie kann ich Vornamen und Nachnamen in die Nachbarzellen einlesen lassen?


[Einzellink]

Tipp 125: Bei Uhrzeiten in Spalte A Makro ausführen

In Spalte A stehen Uhrzeiten. zu jeder dieser Zeit soll ein Text in die Nachbarzellen eingelesen werden. Wie lautet das Makro?


Hinweis: Aufruf mit dem Makro start, Abbrechen mit dem Makro stoppen:

[Einzellink]

Tipp 126: Laufende Uhrzeit in Zelle

Wie kann ich in einer Zelle immer die aktuelle Uhrzeit anzeigen?


[Einzellink]

Tipp 127: Pfad und Dateiname in die Fußzeile

Wie kann ich Pfad und Dateinamen in die Fußzeile links einfügen?


[Einzellink]

Tipp 128: Zahlen in Zeilen sortieren

In den Zeilen 11 bis 18 stehen ab Spalte E Zahlen. Wie kann ich diese in den Zeilen sortieren lassen?


Tip: Im Dialogfeld Daten - Sortieren kann in den Optionen eingestellt werden, daß Spalten sortiert werden sollen.

[Einzellink]

Tipp 129: Grafik auswählen und auf eine bestimmte Zelle legen

Auf einem Tabellenblatt befinden sich mehrere Gefahrengrafiken, die mit Bild ... durchnumeriert sind. Wie kann ich erreichen, daß auf der Grundlage einer in J11 stehenden Zahl die entsprechende Grafik nach D16 kopiert wird?


Eine Datei dazu finden Sie in den Beispieldateien (chemie.zip).

[chemie.zip (20.56 KB)] [Einzellink]

Tipp 130: Erste leere Zelle in einer Spalte

Wie kann ich in Spalte B die erste leere Zelle finden? Zwischen den Daten befinden sich keine leeren Zellen.


Entweder:

oder:

[Einzellink]

Tipp 131: Zellwert um 1 erhöhen

Wie kann ich den Wert von A1 um 1 erhöhen?


[Einzellink]

Tipp 132: Formeln in Zellen per VBA einfügen

Wie kann man in einer Tabelle in verschiedene Spalten Formeln mit Hilfe eines Makros hineinkopieren ? Dabei ist die "Startzeile" immer die selbe. Dagegen variiert die "Endzeile" in Abhängigkeit der eingegebenen Daten. Wer kennt eine VBA Prozedur mit der dieses Problem leicht zu lösen ist.


Angenommen in Spalte A und B stehen Zahlen, in Spalte C willst Du nun die Summe haben, wobei die Zeilenanzahl durch die Spalte B bestimmt wird.

[Einzellink]

Tipp 133: Tabellenblatt löschen

Wie kann ich ein Tabellenblatt löschen und die Excelmeldung ausschalten?


[Einzellink]

Tipp 134: Tabellenblattnamen

Wie kann ich den Tabellenblatt-Namen über Makro auslesen?


[Einzellink]

Tipp 135: Zeichen zu Zellinhalt hinzufügen

Wie füge ich an mehrere Zellen mit einen beliebigen Zellinhalt mehrere, gleichbleibende Zeichen (am Anfang oder Ende) hinzu?


In VBA z.B. für Spalte A

Möglichkeit per Formel:

[Einzellink]

Tipp 136: Anzahl der Einträge in einer Spalte

Wie kann ich die Anzahl der Einträge in einer Spalte feststellen?


Wenn nur die letzte Zeile festgestellt werden soll:

Zellen mit Inhalt:

[Einzellink]

Tipp 137: Minuszeichen nach vorn

Wie kann ich in einer Spalte aus Zahlen, hinter denen das Minuszeichen steht, negative Zahlen erstellen?


[Einzellink]

Tipp 138: Vornamen zählen

In einigen Zellen stehen mehrere Vornamen, durch ein Komma getrennt. Wie kann ich die Vornamen unter dem Datenbereich auswerten lassen? Beispiel: Tobias, Jens Ingo Frank, Tobias Ingrid, Sabine


[Einzellink]

Tipp 139: Zufallszahlen in einem bestimmten Bereich generieren

Wie kann ich zwischen 6 und 15 Zufallszahlen zwischen 1 und 49 generieren? Die Zahlen sollen auf dem Blatt Tab1 in der Zeile 1 ab A1 stehen. Keine Zahl darf sich wiederholen.


[Einzellink]

Tipp 140: Numerische und alphanumerische Werte sortieren

Wie kann ich folgende Zahlen in Spalte A sortieren: 100, 101, 100a, 100b, 102?


[Einzellink]

Tipp 141: Doppelte Einträge in zwei Spalten finden

Wie kann ich zwei Spalten auf doppelte Einträge (Zahlen) untersuchen und auf eine 3. Spalte kopieren?


Das Makro durchläuft die Zeilen von lngEZ bis lngLZ in Spalte intS. Immer wenn es in den restlichen Zeilen bis lngLZ eine gleiche Eintragung wie in der aktuellen Zelle findet, prüft es, ob auch die Eintragungen in den anderen beiden Spalten identisch sind. Wenn ja, trägt es in der Spalte intSZ in der aktuellen Zeile ein: "Mehrfach vorhanden." und in den anderen identischen Zeilen die einzelnen Werte der Zellen.

[Einzellink]

Tipp 142: Spalte in Inputbox

In eine Inputbox soll der Buchstabe einer Spalte eingegeben werden. Der Rückgabewert ist s. Wie kann ich einen Eintrag in die Zelle Zeile i, Spalte s vornehmen?


[Einzellink]

Tipp 143: Letzter Wert einer Spalte

Wie bekomme ich den letzten Wert einer Spalte z. B. von B210 nach z. B. A1, wenn die Spalte jeden Tag um einen Wert erweitert wird?


[Einzellink]

Tipp 144: Spalte versetzen

Wie kann man den Inhalt der aktiven Zelle in der gleichen Zeile in die nächste freie Zelle versetzen?


[Einzellink]

Tipp 145: Variablen Bereich markieren

Wie kann ich die nächste leere Spalte nach rechts in der Höhe einer Datenbank markieren?


[Einzellink]

Tipp 146: Kopieren ohne Format übernehmen

Ich möchte aus der Datei_1/Tabelle_1 die Inhalte der Spalten A,B,C in die Datei_2/Tabelle_2 kopieren. Die Datei_2/Tabelle_2 ist aber in Bezug auf Spaltenbreite,Farbe,Rahmen,... bereits formatiert. Diese Formatierung soll erhalten bleiben. Wie ist das auf eine einfache Art möglich?


[Einzellink]

 

Das Chemtrailhandbuch von Jörg Lorenz mit einem Vorwort von Jörg Kachelmann

Susanne Hammann-Sayilir - Modedesign  Modeillustration