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

Forumthread: Bereich per VBA multiplizieren

Bereich per VBA multiplizieren
09.10.2012 08:11:38
Tim
Hallo an alle,
ich würde gerne per VBA die Zahlen in einem bestimmten Bereich (z.B. B3:B100 und D3:D100) mit dem Wert 10 multiplizieren und das Ergebnis in die gleichen Zellen schreiben.
Kann mir jemand sagen, ob und wie so etwas möglich ist ?
In den betreffende Zellen stehen nur Zahlen (ganze Zahlen zwischen 0 und 1000).
Es gibt jedoch auch Zellen, in denen gar nichts steht - hier soll nichts passieren.
VG und vielen Dank Euch im Voraus für jeden Tipp,
Tim

Anzeige

7
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Bereich per VBA multiplizieren
09.10.2012 08:18:32
{Boris}
Hi Tim,
Option Explicit
Sub til()
Dim C As Range
For Each C In Range("B3:B100, D3:D100")
If C  "" Then
C = C * 10
End If
Next C
End Sub
VG, Boris

AW: Bereich per VBA multiplizieren
09.10.2012 08:21:08
Tim
Hallo Boris,
vielen Dank für die schnelle Antwort - klappt absolut super ! :-)
Klasse !
VG und einen schönen Tag noch,
Tim

Anzeige
AW: Bereich per VBA multiplizieren
09.10.2012 09:37:49
Tim
Hallo Boris,
ich habe noch eine kleine Nachfrage:
Wenn ich anstelle zu multiplizieren, teilen möchte, muss ich dann etwas beachten ?
Ich habe es mit / statt dem * probiert, dann springt jedoch der Debugger an.
Hast Du dazu auch eine Idee ?
VG,
Tim

AW: Bereich per VBA multiplizieren
09.10.2012 08:21:47
mäxl
hi
Option Explicit
'B3:B100 und D3:D100
Sub stantiv()
Dim rng As Range, rngValue As Range, rngCell As Range
Const IntAdd As Integer = 10
Set rng = Union(Range("B3:B100"), Range("D3:D100"))
On Error GoTo ErrMsg
Set rngValue = rng.SpecialCells(xlCellTypeConstants, 1)
For Each rngCell In rngValue
rngCell = rngCell + IntAdd
Next
Exit Sub
ErrMsg:
MsgBox "keine Zellen zum addieren gefunden"
End Sub
gruß

Anzeige
AW: Bereich per VBA multiplizieren
09.10.2012 08:23:35
mäxl
hi
multiplizieren....
zzz, natürlich rngCell = rngCell * IntAdd
;)

AW: Bereich per VBA multiplizieren
09.10.2012 08:28:53
Tim
Hallo mäxl,
vielen Dank - auch das klappt super ! :-)
VG und einen schönen Tag noch,
Tim

AW: Bereich per VBA multiplizieren
09.10.2012 09:40:06
Tim
sorry, mein Fehler - ich hatte den Passwortschutz vergessen...
Klappt bestens ! :-)
Danke nochmal,
Tim
Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige
Anzeige

Infobox / Tutorial

Bereich per VBA multiplizieren


Schritt-für-Schritt-Anleitung

Um in Excel mehrere Zellen mit einem Faktor zu multiplizieren, kannst du VBA (Visual Basic for Applications) verwenden. Hier ist eine einfache Anleitung, wie du das umsetzen kannst:

  1. Öffne das VBA-Editor:

    • Drücke ALT + F11, um den VBA-Editor zu öffnen.
  2. Einfügen eines neuen Moduls:

    • Klicke im Menü auf Einfügen und dann auf Modul.
  3. Erstelle das VBA-Skript:

    • Füge den folgenden Code in das Modul ein:
    Option Explicit
    Sub MultipliziereBereich()
       Dim C As Range
       For Each C In Range("B3:B100, D3:D100")
           If C <> "" Then
               C = C * 10 ' Hier kannst du den Faktor anpassen
           End If
       Next C
    End Sub
  4. Ausführen des Skripts:

    • Schließe den VBA-Editor und gehe zurück zu Excel.
    • Drücke ALT + F8, wähle MultipliziereBereich und klicke auf Ausführen.

Das Skript multipliziert alle Zellen im Bereich B3:B100 und D3:D100 mit dem Wert 10, außer wenn die Zellen leer sind.


Häufige Fehler und Lösungen

  • Fehler: "Keine Zellen zum addieren gefunden"

    • Lösung: Stelle sicher, dass der Bereich tatsächlich Zellen mit Werten enthält. Überprüfe, ob die Zellen leer sind.
  • Fehler: Debugger springt an

    • Lösung: Wenn du versuchst zu teilen, benutze den Code wie folgt:
    C = C / 10 ' Anpassen auf Division

    Stelle sicher, dass der Divisor nicht null ist.


Alternative Methoden

Wenn du nicht mit VBA arbeiten möchtest, kannst du auch Formeln verwenden. Zum Beispiel kannst du in einer Hilfsspalte die Multiplikation durchführen und die Ergebnisse dann zurückkopieren.

  1. Formel anwenden:

    • In Zelle E3 (neben B3) schreibe die Formel:
      =B3*10
    • Ziehe die Formel bis E100.
  2. Werte zurückkopieren:

    • Kopiere die Zellen E3:E100 und füge sie als Werte in B3:B100 ein (Rechtsklick → Einfügen → Werte).

Praktische Beispiele

Angenommen, du hast folgende Werte in den Zellen B3 bis B5:

B3 B4 B5
5 10 20

Nach dem Ausführen des VBA-Skripts wird der Bereich wie folgt aussehen:

B3 B4 B5
50 100 200

Das gleiche gilt für den Bereich D3:D5.


Tipps für Profis

  • Wende die Multiplikation auf ganze Spalten an: Du kannst den Range-Befehl auf die gesamte Spalte anwenden, z.B. Range("B:B"), um alle Zellen in der Spalte B zu multiplizieren.

  • Verwende Konstanten: Definiere einen konstanten Wert am Anfang des Codes, um die Wartbarkeit zu erhöhen, z.B. Const Faktor As Integer = 10.


FAQ: Häufige Fragen

1. Kann ich den Faktor leicht ändern? Ja, du kannst den Faktor im Code einfach anpassen, indem du C = C * 10 änderst.

2. Wie kann ich mehrere Zellen mit einer Zahl multiplizieren? Nutze den gleichen VBA-Code, um mehrere Zellen in den gewünschten Bereichen auszuwählen und mit dem gewünschten Faktor zu multiplizieren.

3. Was passiert, wenn ich den Code ohne VBA ausführen möchte? Du kannst die Multiplikation auch über Formeln in Excel durchführen, indem du die entsprechende Formel in eine Hilfsspalte einfügst.

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