Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Ganze Spalte mit 1 Multiplizieren:Falsches Format

Ganze Spalte mit 1 Multiplizieren:Falsches Format
15.05.2009 07:22:39
chris
Hallo liebes VBA Profis und Excelspezialisten,
ich muss euch gleich früh um Hilfe bitte und hoffe Ihr könnt mir helfen.
Ich weiß nicht wie ich es am schnellsten hinbekomme.
Ich habe mehere Spalte die ich gerne mit 1 Multiplizieren möchte weil das Format Falsch ist.
Wenn ich zwar auf die zelle gehe steht das richtige Format in der einzelnen Zelle aber das Datum in der zelle wird nicht als Datum erkannt sondern erst wenn ich in die Zelle klicke und Enter drücke.
Erst dann zählt das Datum richtig mit.
Da es sehr viele Einträge in den Spalten sind mächte ich am liebsten die ganze Spalte mit einem Makro Multiplizieren lassen.
Ich könnte es zwar mit einer Schleife hinbekommen aber das würde ewig laufen.
Vielen dank an alle Helfer im vorraus
gruß Chris
Anzeige

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

Betreff
Datum
Anwender
Anzeige
AW: Ganze Spalte mit 1 Multiplizieren:Falsches Format
15.05.2009 07:27:30
Werner
Hallo Chris,
probier mal folgendes:
Die Zahl "1" in eine freie Zelle schreiben, beispielsweise in Zelle D1.
Diese Zelle dann markieren und kopieren.
Anschließend den Bereich markieren, die Du als Zahl haben willst.
Über Bearbeiten/Inhalte einfügen.../Multiplizieren anklicken, fertig.
Gruß
Werner
Anzeige
AW: Ganze Spalte mit 1 Multiplizieren:Falsches Format
15.05.2009 07:58:39
chris
Jo funktioniert.
Wollte das ganze eigentlich in VBA haben aber das kann ich mir denke ich aufzeichnen.
Danke dir !
AW: fehlerhaft fügt "00.01.00" ein wenn zelle Leer
15.05.2009 08:05:52
chris
Hallo Werner,
ich muss leider doch noch einmal offen stellen den Beitrag.
Wenn ich das so aufzeichne dann schaut es so aus.
Option Explicit

Sub Makro1()
Selection.Copy
Columns("A:A").Select
Selection.PasteSpecial Paste:=xlPasteAll, Operation:=xlMultiply, _
SkipBlanks:=False, Transpose:=False
Application.CutCopyMode = False
Selection.NumberFormat = "dd/mm/yy;@"
End Sub


Ich muss es über die ganze Spalte A aufzeichnen.
Nur das Problem ist jetzt das auch in zellen in denen nichts steht auf einmal das steht "00.01.00"
Weißt du oder jemand weiter ? Vielen Dank
P.s auch wenn ich beim einfügen der werte sage "Leerzellen überspringen" fügt er mir in die zellen in denen nichts steh eine 0 ein und das möchte ich nicht.Diese zelle soll Leer bleiben.
Danke

Anzeige
AW: fehlerhaft fügt "00.01.00" ein wenn zelle Leer
15.05.2009 08:49:26
Werner
Hallo Chris,
ich bin auch kein VBA-Spezialist, aber probier mal nachfolgenden Code:

Sub Makro1()
Dim i
For i = 1 To 65536
If Cells(i, 1).Value  "" Then
Cells(1, 4).Copy
Cells(i, 1).PasteSpecial Paste:=xlPasteAll, Operation:=xlMultiply, _
SkipBlanks:=False, Transpose:=False
Selection.NumberFormat = "dd/mm/yy;@"
Application.CutCopyMode = False
End If
Next i
Ens Sub


Gruß
Werner

Anzeige
AW: Dachte mir schon das es nur mit Schleife geht
15.05.2009 09:20:27
chris
Danke Werner,
dachte mir schon das es nur mit einer Schleife geht.
AW: Dachte mir schon das es nur mit Schleife geht
15.05.2009 09:35:12
David
Hallo Chris,
das geht auch ohne Schleife:

Option Explicit
Sub text2date()
Dim c As Range
For Each c In Range("A1:A18")
c.NumberFormat = "dd.mm.yyyy"
c.Value = CDate(c.Value)
Next
End Sub


Den Range-Bereich musst du anpassen oder ggf. durch "Selection" ersetzen, dann musst du den betreffenden Bereich vorher markieren.
Rückmeldung wäre nett.
Gruß
David

Anzeige
AW: LeerZellen überspringen
15.05.2009 10:28:59
Daniel
Hi
die Leerzellenproblematik kannst du vermeiden, in dem du für die Aktion nicht alle Zellen der Spalte A selektierst, sondern nur diejenigen, die Texte enthalten.
das geht über BEARBEITEN - GEHE ZU - INHALTE und dort KONSTANTEN - Texte anchecken.
im Makrocode sieht das dann so aus:

Columns("A:A").specialcells(xlcelltypeConstants,2).select


allerdings sollte man SELECTS prinzipiell vermeiden, dh. wenn man dem Recorder Code aufgezeichnet hat, sollte man den Code immer noch wie folgt überarbeiten:
Range(xy).Select
Selection.IrgendeineAktion

wird zu
Range(xy).IrgendeineAktion
Gruß, Daniel

Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige
Anzeige

Infobox / Tutorial

Ganze Spalte in Excel mit einer Zahl multiplizieren


Schritt-für-Schritt-Anleitung

Um eine ganze Spalte in Excel mit einer Zahl zu multiplizieren, befolge diese einfache Anleitung:

  1. Zahl eingeben: Schreibe die Zahl, mit der du multiplizieren möchtest, in eine freie Zelle, z.B. D1.
  2. Zelle kopieren: Markiere die Zelle D1 und kopiere sie (Strg + C).
  3. Bereich auswählen: Wähle die gesamte Spalte oder den spezifischen Bereich aus, den du multiplizieren möchtest.
  4. Inhalte einfügen: Gehe auf Bearbeiten > Inhalte einfügen... und wähle Multiplizieren.
  5. Format anpassen: Falls nötig, passe das Format der Zellen an, um sicherzustellen, dass die Werte korrekt angezeigt werden.

Mit diesen Schritten kannst du die gesamte Spalte einfach multiplizieren, ohne jede Zelle einzeln zu bearbeiten.


Häufige Fehler und Lösungen

  • Falsches Format: Wenn das Datum nach der Multiplikation nicht richtig angezeigt wird, überprüfe das Zellenformat. Stelle sicher, dass das richtige Datum-Format gesetzt ist (z.B. "dd/mm/yyyy").

  • Leere Zellen: Wenn bei leeren Zellen unerwünschte Werte wie "00.01.00" erscheinen, stelle sicher, dass du die Option "Leerzellen überspringen" aktivierst, wenn du Inhalte einfügst.


Alternative Methoden

Es gibt auch andere Möglichkeiten, ganze Spalten in Excel zu multiplizieren:

  • VBA-Makro:

    Sub GanzeSpalteMultiplizieren()
      Columns("A:A").Select
      Selection.Copy
      Selection.PasteSpecial Paste:=xlPasteAll, Operation:=xlMultiply
      Application.CutCopyMode = False
    End Sub
  • Verwendung von Formeln: Du kannst auch eine Hilfsspalte benutzen, um die Werte zu multiplizieren, und dann das Ergebnis kopieren und in die ursprüngliche Spalte einfügen.


Praktische Beispiele

  1. Ganze Spalte mal 100: Möchtest du alle Werte in einer Spalte mit 100 multiplizieren, gehe einfach wie in der Schritt-für-Schritt-Anleitung beschrieben vor.

  2. Zwei Spalten multiplizieren: Um zwei Spalten miteinander zu multiplizieren, kannst du die Formel =A1*B1 in C1 eingeben und nach unten ziehen.


Tipps für Profis

  • Makros optimieren: Wenn du häufig große Datenmengen verarbeitest, kann es sinnvoll sein, ein Makro zu erstellen, das die Multiplikation automatisiert und gleichzeitig das Format für die gesamte Spalte anpasst.

  • Formel für feste Zelle: Wenn du immer mit der gleichen Zelle multiplizieren möchtest, kannst du die Formel =A1*$D$1 verwenden, wobei D1 die feste Zelle ist.


FAQ: Häufige Fragen

1. Wie kann ich sicherstellen, dass leere Zellen nicht verändert werden? Um leere Zellen zu überspringen, achte darauf, dass du die Option "Leerzellen überspringen" beim Einfügen von Inhalten auswählst.

2. Was tun, wenn Excel die Werte falsch multipliziert? Überprüfe das Zellenformat. Manchmal kann es sein, dass Excel die Werte nicht als Zahlen erkennt, was zu falschen Ergebnissen führen kann.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige