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

Zellenformat via VBA ändern

Forumthread: Zellenformat via VBA ändern

Zellenformat via VBA ändern
13.06.2005 11:49:08
Markus
Hallo zusammen,
ich muss immer auf Tabellenblatt x den eintrag in cell (a,b) ändern (wobei a und b sich ändern)
Das Format hier soll immer datum sein.. also
Selection.NumberFormat = "d/m/yyyy"
damit komm ich aber nicht weiter..
kann mir da jemand helfen?
Danke
Markus
Anzeige

8
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Zellenformat via VBA ändern, Doppelt oT
13.06.2005 11:52:28
Hajo_Zi
AW: Zellenformat via VBA ändern, Doppelt oT
13.06.2005 13:17:43
Markus
und wie aktivier ich die zellen?
cell (a, b) ?
AW: Zellenformat via VBA ändern, Doppelt oT
13.06.2005 13:20:02
Hajo_Zi
Hallo Markus,
in VBA kann zu 99% auf select verzichtet werden.
Gruß Hajo
Das Forum lebt auch von den Rückmeldungen.
Anzeige
AW: Zellenformat via VBA ändern
13.06.2005 12:27:43
Dieter
Hallo
Versuch es mal hiermit
ActiveCell.Formula = Format(Selection, "DD.MM.YY")
Bis dann
AW: Zellenformat via VBA ändern
13.06.2005 14:09:38
Markus
ok, aber nur
ActiveCell.Formula = Format(Selection, "DD.MM.YY")
funktioniert nicht..
Diese zelle muss ich mit datum formatieren
Worksheets(blatt_ü).Cells(zeile_ü, spalte + 1) = Worksheets(blatt).Cells(zeile, spalte + 1)
Anzeige
AW: Zellenformat via VBA ändern
13.06.2005 18:44:49
Hajo_Zi
Hallo Markus,
schaue doch auch mal in Deinen ersten Beitrag.
Gruß Hajo
Das Forum lebt auch von den Rückmeldungen.
AW: Zellenformat via VBA ändern
13.06.2005 13:31:08
Markus

Sub test()
Dim bereich As Range
Dim zelle As Range
Set bereich = brands = Sheets(1).Range("a1:b16")
For Each zelle In bereich
zelle.NumberFormat = "d/m/yyyy"
Next
End Sub

Gruss
Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige
Anzeige

Infobox / Tutorial

Zellenformat via VBA ändern


Schritt-für-Schritt-Anleitung

Um das Zellenformat in Excel mit VBA zu ändern, folge diesen Schritten:

  1. Öffne den VBA-Editor: Drücke ALT + F11.

  2. Füge ein neues Modul hinzu: Klicke mit der rechten Maustaste auf "VBAProject (deinArbeitsblatt)", wähle "Einfügen" und dann "Modul".

  3. Schreibe den VBA-Code: Verwende den folgenden Code, um das Zellenformat zu ändern:

    Sub ZellenformatAendern()
       Dim bereich As Range
       Dim zelle As Range
       Set bereich = Sheets("Tabellenblatt1").Range("A1:B16")
    
       For Each zelle In bereich
           zelle.NumberFormat = "d/m/yyyy"  ' Ändert das Format auf Datum
       Next zelle
    End Sub
  4. Führe das Makro aus: Klicke auf F5 oder wähle im Menü "Ausführen" die Option "Sub/UserForm ausführen".


Häufige Fehler und Lösungen

  • Fehler: "Das Format konnte nicht geändert werden."

    • Lösung: Stelle sicher, dass die Zellen, die du formatieren möchtest, keine Daten enthalten, die mit dem gewählten Format nicht kompatibel sind.
  • Fehler: "Der Bereich konnte nicht gefunden werden."

    • Lösung: Überprüfe den Namen des Tabellenblattes und die angegebenen Zelladressen.

Alternative Methoden

Wenn du das Zellenformat auf andere Weise ändern möchtest, kannst du folgende Methoden in Betracht ziehen:

  • Direktes Zuweisen des Formats:

    Worksheets("Tabellenblatt1").Cells(1, 1).NumberFormat = "dd/mm/yyyy"
  • Verwendung der Format-Funktion:

    ActiveCell.Formula = Format(ActiveCell.Value, "dd/mm/yyyy")

Beide Methoden sind nützlich, wenn du das Format einer bestimmten Zelle oder eines Zellbereichs ändern möchtest.


Praktische Beispiele

Hier sind einige praktische Beispiele, wie du das Zellenformat mit VBA ändern kannst:

  1. Einzelne Zelle formatieren:

    Worksheets("Tabellenblatt1").Cells(1, 1).NumberFormat = "dd/mm/yyyy"
  2. Bereich von Zellen formatieren:

    Sub BereichFormatieren()
       Dim bereich As Range
       Set bereich = Sheets("Tabellenblatt1").Range("A1:B10")
       bereich.NumberFormat = "dd/mm/yyyy"
    End Sub
  3. Dynamische Zellreferenzen:

    Sub DynamischesFormat()
       Dim a As Integer
       Dim b As Integer
       a = 1 ' Beispielwert für Zeile
       b = 2 ' Beispielwert für Spalte
       Worksheets("Tabellenblatt1").Cells(a, b).NumberFormat = "dd/mm/yyyy"
    End Sub

Tipps für Profis

  • Vermeide Select: In VBA ist es effizienter, direkt auf Objekte zuzugreifen, anstatt sie zuerst auszuwählen. Zum Beispiel:

    Worksheets("Tabellenblatt1").Cells(a, b).NumberFormat = "d/m/yyyy"
  • Nutze With-Anweisungen: Damit kannst du den Code effizienter gestalten:

    With Worksheets("Tabellenblatt1").Range("A1:B16")
       .NumberFormat = "d/m/yyyy"
    End With

FAQ: Häufige Fragen

1. Wie kann ich das Format einer Zelle auf Währung ändern? Um das Format auf Währung zu ändern, kannst du den Code wie folgt anpassen:

Worksheets("Tabellenblatt1").Cells(1, 1).NumberFormat = "$#,##0.00"

2. Gibt es eine Möglichkeit, das Format von mehreren Blättern gleichzeitig zu ändern? Ja, du kannst eine Schleife verwenden, um durch die Blätter zu iterieren. Hier ein Beispiel:

Dim ws As Worksheet
For Each ws In ThisWorkbook.Worksheets
    ws.Range("A1:B16").NumberFormat = "d/m/yyyy"
Next ws

Mit diesen Anleitungen und Tipps kannst du das Zellenformat in Excel effizient ändern und anpassen.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige