Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: - Markierte Zellen nacheinander abarbeiten (VBA)

- Markierte Zellen nacheinander abarbeiten (VBA)
25.05.2005 13:54:29
Harald
Guten Tag,
kann mir jemand helfen? Ich markiere in einer Excel-Tabelle mehrere Zellen und möchte diese auf knopfdruck einzeln nacheinander mit bestimmten werten abgleichen.
Die markierten Zellen sind aber nicht direkt zusammenhängend, also keine Range. Hat jemand einen Tipp?
Vielen Dank!
Anzeige

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: - Markierte Zellen nacheinander abarbeiten (VBA)
25.05.2005 14:03:20
Ralf
Hi Harald,
schau mal ca. gegen 14.15 Uhr auf meiner Website, vb-anton.de nach. Die ist zwar noch in Arbeit, aber ich stelle Dir mal ein Beispiel zur Arbeit mit For Each über mehrere, individuell festlegbare Bereiche rein. Du wirst sie finden unter Freier Download - For Each. Ok?
Ciao, Ralf
Anzeige
AW: - Markierte Zellen nacheinander abarbeiten (VBA)
25.05.2005 14:14:56
IngGi
Hallo Harald,
Dim rng as Range
For each rng in Selection
Deine_Vergleiche
Next rng
Gruß Ingolf
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige
Anzeige

Infobox / Tutorial

Markierte Zellen nacheinander abarbeiten mit VBA


Schritt-für-Schritt-Anleitung

Um markierte Zellen in Excel nacheinander abzuarbeiten, kannst du VBA (Visual Basic for Applications) nutzen. Hier ist eine einfache Schritt-für-Schritt-Anleitung:

  1. Öffne die Entwicklertools: Aktiviere die Entwicklertools in Excel, falls sie nicht sichtbar sind. Gehe zu Datei > Optionen > Menüband anpassen und aktiviere das Kontrollkästchen für Entwicklertools.

  2. Öffne den VBA-Editor: Klicke auf Entwicklertools > Visual Basic, um den VBA-Editor zu öffnen.

  3. Neues Modul hinzufügen: Klicke mit der rechten Maustaste auf VBAProject (DeinArbeitsblattname) und wähle Einfügen > Modul.

  4. Code einfügen: Kopiere den folgenden Code in das Modul:

    Sub AbarbeitenMarkierteZellen()
       Dim rng As Range
       For Each rng In Selection
           ' Hier kannst du deine Vergleiche und Aktionen einfügen
           MsgBox rng.Value ' Beispiel: Zeige den Wert der Zelle an
       Next rng
    End Sub
  5. Makro ausführen: Schließe den Editor, gehe zurück zu Excel, markiere die gewünschten Zellen und führe das Makro über Entwicklertools > Makros aus.


Häufige Fehler und Lösungen

  • Fehler: "Objekt erforderlich"
    Lösung: Stelle sicher, dass du Zellen ausgewählt hast, bevor du das Makro ausführst. Wenn keine Zellen markiert sind, kann das Skript nicht funktionieren.

  • Fehler: "Typ nicht definiert"
    Lösung: Überprüfe, ob du die Variable rng korrekt deklariert hast. Der Code sollte Dim rng As Range enthalten.


Alternative Methoden

Falls du keine VBA-Programmierung nutzen möchtest, kannst du auch die Funktion "Suchen und Ersetzen" in Excel verwenden, um Werte in markierten Zellen abzugleichen. Dies ist allerdings deutlich weniger flexibel und automatisiert als mit VBA.

  1. Markiere die Zellen.
  2. Gehe zu Start > Suchen und Auswählen > Ersetzen.
  3. Gib den Wert ein, den du suchen möchtest, und klicke auf Alle ersetzen.

Praktische Beispiele

Hier sind einige praktische Anwendungsmöglichkeiten für das Abarbeiten markierter Zellen:

  • Werte vergleichen: Statt einer MsgBox kannst du Vergleiche anstellen, um zu prüfen, ob die Werte in den Zellen bestimmten Kriterien entsprechen.

    If rng.Value > 100 Then
      rng.Interior.Color = RGB(255, 0, 0) ' Färbt die Zelle rot, wenn der Wert größer als 100 ist
    End If
  • Daten aggregieren: Du kannst auch Werte summieren oder in eine andere Zelle kopieren, während du durch die markierten Zellen iterierst.


Tipps für Profis

  • Verwende Application.ScreenUpdating = False: Dadurch wird die Bildschirmaktualisierung während der Ausführung des Makros deaktiviert, was die Leistung verbessert.

    Application.ScreenUpdating = False
    ' Dein Code hier
    Application.ScreenUpdating = True
  • Fehlerbehandlung einbauen: Nutze On Error Resume Next, um sicherzustellen, dass dein Makro auch bei auftretenden Fehlern weiterläuft.


FAQ: Häufige Fragen

1. Wie kann ich das Makro auf eine Schaltfläche legen?
Du kannst eine Schaltfläche hinzufügen über Entwicklertools > Einfügen > Schaltfläche (Formsteuerung), und dann das Makro zuweisen.

2. Funktioniert das auch in Excel Online?
Leider unterstützt Excel Online keine VBA-Makros. Du benötigst die Desktop-Version von Excel, um diese Funktionalität zu nutzen.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige