Supportnet Computer
Planet of Tech

Supportnet / Forum / Tabellenkalkulation

zellenformatierung auslesen





Frage

hi alle wie kann man eine kommplette zellenformatierung(z.b. "#,##0.00 $") auslesen ,schoen waere eine uebergabe als string. gruss nighty

Antwort 1 von want2cu

hallo nighty,

du hast ja Sonntags mal wieder Fragen ;-)
Ich bin mir relativ sicher, dass in einem meiner schlauen Bücher (@Svenja: jetzt bitte nicht wieder grinsen!) im Büro dafür eine VBA-Lösung steht.

Als ich wegen deiner letzten (oder vorletzten ?) Frage nach dem Usernamen gesucht habe, meine ich ,dass es per VBA die möglichkeit gibt , alle möglichen Variablen auszulesen, auch das Auslesen einer Zell- oder Schriftfarbe ist damit möglich. Und das müßte vom Prinzip her (ist ja auch ne Formatierung) dann genau so mit den anderen Formaten klappen.

Wenn nicht - wie wahrscheinlihc üblich - hier ein Z schneller sein sollte, werde ich morgen mal im Büro nachsehen.

CU
Klaus

Antwort 2 von want2cu

oooops: wichtiger Nachtrag:

das Z ist kein Schimpfwort, sondern eine Ehrenbezeichnung. Es sollte VBA-C r a c k s heissen.

So, jetzt wird es wohl zu lesen sein, hoffe ich;-)

CU
klaus

Antwort 3 von pelle

Hallo nighty,

wenn es nur um die Standardformatierungen geht,
hilft Dir da nicht die Funktion:
Zelle("Format";A1)
weiter??
In Deinem Beipiel wird "W2" zurückgemeldet!
In Verbindung mit der Funktion Wenn oder
vielleicht mit SVERWEIS (+Hilfstabelle)
könntest Du es doch dann umsetzen!

gruss
pelle

Antwort 4 von nighty

hi alle

@pelle
ich moechte flexible also unbekannte zellen formatierungen auslesen koennen um diese dann gegebenenfalls zu aendern die jeweils aktuelle formatierung moechte ich in einem string zur weiteren verarbeitung bereitstellen.

gruss nighty

Antwort 5 von pelle

Hallo nighty,

Satz mit X...!

:-)
gruss
pelle

Antwort 6 von shrike

Hi nighty!

gleich zum ausprobieren:

Sub Ermittle_Zahlformat()
Dim NumForm1$, NumForm2$
    NumForm1 = ActiveCell.NumberFormat
    NumForm2 = ActiveCell.NumberFormatLocal
    MsgBox NumForm1 & Chr(10) & NumForm2
End Sub

"NumberFormat" ist internationale Angabe.
"NumberFormatLocal" ist länderspezifische Anzeige.

Wozu Bücher, wenn es die VBA-Hilfe in Excel gibt? *grins*

Naja, manchmal braucht man sie schon.

gruß, shrike

Antwort 7 von want2cu

@shrike:
die Bücher sollen ja auch nur für diejenigen User sein, die ein 1000-seitiges Kompendium mit 850 fertigen VBA-Lösungen nicht im Kopf behalten können. ;-)))
Ausserdem bezweifle ich, dass in der VBA-Hilfe alles das an Praxisbeispilen drinsteht, was man so beim Stöbern in richtig guten Büchern findet.

CU
Schöne Grüsse und einen schönen Tag wünscht euch der
Bücher-KLaus ;-)


Antwort 8 von want2cu

hallo nighty,

und hier wieder mal ein kleiner Auszug aus dem Buch "Excel-VBA-programmierung", Markt&Technik, von Bernd Held:

Formate prüfen mit VBA:

Sub FormatErkennen()
Sheets("Verzweigungen").Activate
Range("A25").Select
Select Case ActiveCell.NumberFormat
Case "General"
MsgBox "Das Standardformat"
Case "0.00"
MsgBox "Einfache Zahl mit zwei Kommas"
Case "#.##0.00"
MsgBox "Zahl mit Trennzeichen und 2 Kommas"
Case "@"
MsgBox "Textformat"
Case Else
MsgBox "Format wurde nicht erkannt"
End Select
End Sub

Das klappt zwar nur bei explizit aufgeführten Formaten , aber vielleicht kommst du ja damit weiter und das Listing bietet dir einen kleinen Lösungsansatz.

Falls ich noch was besseres finde, melde ich mich nochmal ;-)

CU
KLaus

P.S.: Es gibt wohl auch eine Eigenschaft FormatNumberLocal, vielleicht kannst du damit auch was anfangen

Antwort 9 von shrike

@want2cu
Wenn ich ein 1000-seitiges Kompendium in die Hand nehme, dann lese ich mich meist fest und habe nach einer halben Stunde vergessen was ich eigentlich gesucht habe ;-))

@nighty
Das Format ändern kannst du natürlich auch mit der gleichen Zellen-Eigenschaft, z.B.:


Range("A1", "A10").NumberFormatLocal = "#.##0,00 €;[Rot]-#.##0,00 €"

Die Schreibweise für die Zahlenformate ist dabei genauso wie über "Format - Zellen".

shrike

Antwort 10 von nighty

hi alle

ihr seid mal wieder ALLE spitze schoenen dank an alle ANTWORT 6 war genau das was ich suchte TATAAAA.

gruss nighty

Antwort 11 von nighty

hi pelle

auch wenn du nicht so recht helfen konntest gebuehrt dir ein besonderer dank,die bereitschaft ist es die wertvoll ist.

gruss nighty

Ich möchte kostenlos eine Frage an die Mitglieder stellen:


Ähnliche Themen:


Suche in allen vorhandenen Beiträgen: