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

Forumthread: multiplizieren mit Makro

multiplizieren mit Makro
12.03.2007 09:24:00
Thomas
Hallo,
habe 2 Spalten, in der ersten Spalte steht ein Wert in der anderen unterschiedliche Bedingungen! Alle Werte in Spalte 1 die die Bedingung "a" in Spalte 2 erfüllen sollen mit 2 multipliziert werden.
Beispiel
1 2
2 a
5 b
4 a
Ergebnis
1 2
4 a
5 b
8 a
Bedingung hierbei ist dass die Ergebnisse in die geiche Ursprungszelle geschrieben werden müssen, es darf keine zusätzliche Spalte für Formeln verwendet werden! Ist das möglich evt mit einem Makro?
Bin dankbar für jeden Tip!
Anzeige

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

Betreff
Datum
Anwender
Anzeige
AW: multiplizieren mit Makro
12.03.2007 10:26:40
praetorius
Hallo Thomas,
probiers mal damit
Sub multipliziere()
zeile = 1
Do While Range("A" & zeile).Value <> ""
If Range("B" & zeile).Value = "a" Then
Range("A" & zeile).Value = Range("A" & zeile).Value * 2
Range("B" & zeile).Value = ""
End If
zeile = zeile + 1
Loop
End Sub

Wenn Du in Kauf nimmst, dass das die Multiplikation auslösende Merkmal nach der Multiplikation verschwindet, um eine weitere Berechnung zu verhindern, solltte es klappen.
gruß praetorius
Anzeige
AW: multiplizieren mit Makro
13.03.2007 01:57:00
Matthias
Hallo,
Beispiel für die ersten 4 Zeilen in Spalte A
Option Explicit
Dim X
Sub spalteA()
For X = 1 To 4
If Cells(X, 1).Offset(0, 1) = "a" Then
Cells(X, 1) = Cells(X, 1).Value * 2
End If
Next
End Sub

Gruß Matthias
;

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

Mit Makros in Excel multiplizieren: So geht's


Schritt-für-Schritt-Anleitung

Um in Excel mit einem Makro bestimmte Werte zu multiplizieren, wenn eine Bedingung erfüllt ist, folge diesen Schritten:

  1. Öffne die Excel-Datei, in der du die Multiplikation durchführen möchtest.

  2. Drücke Alt + F11, um den VBA-Editor zu öffnen.

  3. Füge ein neues Modul hinzu: Klicke im Menü auf Einfügen und dann auf Modul.

  4. Kopiere den folgenden VBA-Code in das Modul:

    Sub multipliziere()
        zeile = 1
        Do While Range("A" & zeile).Value <> ""
            If Range("B" & zeile).Value = "a" Then
                Range("A" & zeile).Value = Range("A" & zeile).Value * 2
                Range("B" & zeile).Value = ""
            End If
            zeile = zeile + 1
        Loop
    End Sub
  5. Schließe den VBA-Editor.

  6. Führe das Makro aus: Gehe zurück zu Excel, drücke Alt + F8, wähle multipliziere aus der Liste und klicke auf Ausführen.

Mit diesem Makro werden alle Werte in Spalte A, die in Spalte B die Bedingung "a" erfüllen, mit 2 multipliziert. Beachte, dass der Wert in Spalte B nach der Multiplikation gelöscht wird.


Häufige Fehler und Lösungen

  • Fehler: "Laufzeitfehler 1004"

    • Lösung: Überprüfe, ob die Zellen in Spalte A und B korrekt befüllt sind und keine leeren Zellen in der Schleife vorhanden sind.
  • Fehler: Ergebnisse erscheinen nicht

    • Lösung: Stelle sicher, dass die Bedingung in Spalte B tatsächlich "a" ist. Überprüfe auch, ob das Makro korrekt ausgeführt wurde.

Alternative Methoden

Neben VBA gibt es auch die Möglichkeit, in Excel mit Formeln zu arbeiten. Du kannst die Funktion WENN in Kombination mit MULTIPLIKATION verwenden, wobei diese Methode eine zusätzliche Spalte erfordert:

=WENN(B1="a"; A1*2; A1)

Diese Formel multipliziert den Wert in A1 nur, wenn die Bedingung in B1 erfüllt ist. Allerdings wird das Ergebnis nicht in der Ursprungszelle geschrieben, sondern in einer neuen Zelle.


Praktische Beispiele

Hier ist ein Beispiel, wie die Daten aussehen könnten:

A B
1 a
2 b
5 a
4 c

Nach Ausführung des Makros wird das Ergebnis so aussehen:

A B
2
2 b
10
4 c

Hierbei wurden die Werte in Spalte A, die mit "a" in Spalte B verknüpft sind, multipliziert.


Tipps für Profis

  • Wenn du häufig mit solchen Bedingungen arbeitest, überlege, die Makros in einer personalisierten Excel-Vorlage zu speichern.
  • Nutze die Fehlerbehandlungs-Methoden in VBA, um das Skript robuster zu machen.
  • Halte deine Makros organisiert, indem du sie gut kommentierst, um die Lesbarkeit und Wartbarkeit zu verbessern.

FAQ: Häufige Fragen

1. Kann ich das Makro auch für andere Bedingungen anpassen? Ja, du kannst die Bedingung im If-Statement einfach ändern, um es an deine spezifischen Anforderungen anzupassen.

2. Wo kann ich mehr über VBA lernen? Es gibt viele Online-Ressourcen und Tutorials, die sich mit VBA in Excel beschäftigen. Websites wie Udemy oder YouTube sind gute Anlaufstellen.

3. Funktioniert dieses Makro in allen Excel-Versionen? Das vorgeschlagene Makro sollte in den meisten modernen Excel-Versionen (ab Excel 2007) funktionieren. Es ist jedoch ratsam, die Kompatibilität zu überprüfen, wenn du eine ältere Version verwendest.

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