Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
1292to1296
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

VBA - Zellformatierung als Währung

VBA - Zellformatierung als Währung
04.01.2013 15:59:07
Dominic
Hallo,
kann mir bitte erneut jemand bei meinem Problem helfen?
Würde gerne einige Zellen / Bereiche in Excel je nach Bedingung als Währung, oder als Zahl formatieren. Mit der bedingten Formatierung funktioniert dies immer nur einmal in eine Richtung, wechselt aber nach der Änderung durch ein Drop Down Menü nicht mehr "zurück". Erst wenn ich manuell einen x-beliebigen Zellinhalt ändere springt die bedingte Formatierung zurück auf die gewünschte Formatierung. Daher versuche ich es nun mit VBA zu lösen.
Folgenden Code habe ich bereits, das funktioniert aber nicht.
If ("J5") = "Währung" Then Range("C23:O25").NumberFormat = "#,##0.00 €"
Range("C29:O29").NumberFormat = "#,##0.00 €"
Range("C35:O35").NumberFormat = "#,##0.00 €"
Range("C41:O116").NumberFormat = "#,##0.00 €"
ElseIf ("J5") = "Zahl" Then Range("C23:O25").NumberFormat = "#0"
Range("C29:O29").NumberFormat = "#0"
Range("C35:O35").NumberFormat = "#0"
Range("C41:O116").NumberFormat = "#0"
End If
End Sub
Vielen Dank im Voraus!

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: VBA - Zellformatierung als Währung
04.01.2013 19:29:13
robert_1
Warum überprüfst du auf "Währung" /"zahl"?
Auf Zahl prüfen: if isnumeric(cell("J5"))=true then...
auf Währung überprüfen: ...elseif instr(cell("J5"), "€")=true then...

AW: VBA - Zellformatierung als Währung
07.01.2013 09:46:03
Dominic
Vielen Dank Robert, aber leider bringt mich deine Formel nicht weiter.
Ich habe ein Formularsteuerelement (Kombinationsfeld) eingefügt. Als Werte bekommt dieses 5 Werte aus einem vorher definierten Bereich zur Verfügung gestellt. Die Zell Verknüpfung liegt auf - sagen wir A1. Dort wird mir also je nach Auswahl in dem Steuerelement Werte zwischen 1-5 ausgegeben. Bei 4 dieser Werte soll in dem oben genannten Bereich alle Zellen als Währung definiert werden, bei nur Auswahl der anderen Variante in dem Formularsteuerelement soll in den gesamten Bereich jedoch nur die Formatierung "Zahl" verwendet werden. Da ich mich in VBA so gut wie gar nicht auskenne, hatte ich angenommen eine simple Überprüfung auf einen Wert hin ist einfacher, und hab daher noch eine Wenn/Dann Formel in Zelle J5 integriert, die eben so lautet:
=WENN(ODER($A$1=1;$B$5=2;$B$5=4;$B$5=5);"Währung";"Zahl")
Kann ich das damit irgendwie umsetzen? Oder ohne diesen Umweg in Zelle J5? Und direkt im VBA Code abfragen was aus dem Steuerelement in B5 z. B. ausgegeben wird?

Anzeige
AW: VBA - Zellformatierung als Währung
07.01.2013 09:57:29
Rudi
Hallo,
sicher kannst du das auch direkt im Code abfragen.
  If [A1] = 1 Or [b5] = 2 Or [b5] = 4 Or [b5] = 5 Then
Range("C23:O25").NumberFormat = "#,##0.00 €"
Range("C29:O29").NumberFormat = "#,##0.00 €"
Range("C35:O35").NumberFormat = "#,##0.00 €"
Range("C41:O116").NumberFormat = "#,##0.00 €"
Else
Range("C23:O25").NumberFormat = "#0"
Range("C29:O29").NumberFormat = "#0"
Range("C35:O35").NumberFormat = "#0"
Range("C41:O116").NumberFormat = "#0"
End If

Gruß
Rudi

AW: VBA - Zellformatierung als Währung
07.01.2013 13:08:53
Dominic
Hallo Rudi,
super vielen Dank! Funktioniert einwandfrei. Die Syntax bei VBA ist mir immer noch nicht so geläufig. Manchmal kann es ja doch so einfach sein! :-)
Viele Grüße
Anzeige

54 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige