Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1872to1876
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

Format abhängig vom Wert mit VBA

Format abhängig vom Wert mit VBA
14.03.2022 09:15:47
Patrick
Hallo liebes Forum,
ich habe folgende Fragestellung:
Ich habe eine Excelmappe und in Tabelle1 einen Bereich (range"G20:W100"). In diesem werden einerseits Datumswerte, also bspw. 10.03.2022 eingetragen, und andererseits die Zahlenwerte 1 bzw. 2. Dies kann sich auch ändern, bedeutet, heute kann in "G20" der Wert 1 stehen und morgen bspw. ein Datumwert.
Nun meine Frage: Wie sage ich excel über VBA oder auch ohne VBA, dass wenn 1 oder 2 eingetragen wird, auch 1 bzw. 2 angezeigt wird und nicht 01.01.1900 ? Und andererseits natürlich wenn 14.03.2022 eingetragen wird, dies auch angezeigt wird und nicht 44634.
Ich verstehe, dass Excel jedes Datum in einen Wert umrechnet, aber ich möchte eben, dass es abhängig vom Wert (1, 2, alles andere) jeweils ein Zahlenformat oder ein Datumformat anzeigt.
Ich hoffe ich konnte dies verständlich rüberbringen und danke euch vielmals vorab.
Beste Grüße
Patrick

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

Betreff
Datum
Anwender
Anzeige
AW: Format abhängig vom Wert mit VBA
14.03.2022 09:50:23
ChrisL
Hi Patrick
Wenn die Ganzzahlen z.B. maximal 1.000 und die Datumswerte nicht vor 1903 starten, dann kannst du anhand der Zahlenhöhe unterscheiden.
Beispiel:
- Zelle als Datum formatieren
- Bedingte Formatierung, wenn kleiner 1000 dann Format "Standard"
cu
Chris
AW: Format abhängig vom Wert mit VBA
14.03.2022 10:45:52
Patrick
Hallo Chris,
ja, gute Idee. Aber wie genau mache ich das?
Ich habe den Code mal testweise folgendermaßen geschrieben. Als Range wurde jetzt nur G40 genommen, dies ist künftig dann natürlich größer und dient nur dem Test. Mein Problem: Auch wenn ich als Suchbegriff dann den 01.01.1900 eingebe (was der 1 entspricht) findet er diese nicht.

Sub test()
Dim rngAuswahl As Range
Dim rngTreffer As Range
Dim dteSuchbegriff As Date
Set rngAuswahl = Tabelle1.Range("G40")
rngAuswahl.NumberFormat = "DD.MM.YYYY"
dteSuchbegriff = "01.01.2019"
Set rngTreffer = Tabelle1.Range("G40").Find _
(What:=dteSuchbegriff, LookIn:=xlValues, LookAt:=xlPart)
If rngTreffer Is Nothing Then
MsgBox ("Nix gefunden")
Else
rngTreffer.NumberFormat = "0"
End If
End Sub

Anzeige
AW: Format abhängig vom Wert mit VBA
14.03.2022 11:15:45
ChrisL
Hi
Ich muss meinen Kollegen recht geben, dass die Durchmischung unglücklich ist.
Dennoch hier die Datei mit bedingter Formatierung (ohne VBA). Ich habe das Beispiel auf die ganze Spalte G ausgeweitet.
https://www.herber.de/bbs/user/151756.xlsx
Für die Suche (die Formatierung ist bereits erledigt), könnte man mittels Datentyp Variant arbeiten:

Sub test()
Dim rngAuswahl As Range
Dim rngTreffer As Range
Dim varSuchbegriff As Variant
Set rngAuswahl = Tabelle1.Columns(7)
'Beispiel suche Ganzzahl
'varSuchbegriff = 1
'Beispiel suche Datum
'varSuchbegriff = CDate("14.3.22")
Set rngTreffer = rngAuswahl.Find _
(What:=varSuchbegriff, LookIn:=xlValues, LookAt:=xlWhole)
If rngTreffer Is Nothing Then
MsgBox "Nix gefunden"
Else
MsgBox "gefunden in Zelle " & rngTreffer.Address(0, 0)
End If
End Sub
cu
Chris
Anzeige
AW: Format abhängig vom Wert mit VBA
14.03.2022 13:58:29
Patrick
Hallo Chris,
vielen Dank, das passt.
Und ja, ihr habt recht, die Durchmischung ist Mist. Das merke ich mir auch für die Zukunft.
Ich habe nun noch eine andere Lösung genutzt. Das erfüllt seinen Zweck, auch wenn ich auf die Durchmischung künftig verzichten werde.

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim rngAuswahl As Range
Dim rngTreffer As Range
Set rngAuswahl = Tabelle1.Range("G12:AZ100")
rngAuswahl.NumberFormat = "0"
For Each rngTreffer In rngAuswahl
If rngTreffer > 2 Then
rngTreffer.NumberFormat = "DD.MM.YYYY"
Else
End If
Next
End Sub

Anzeige
AW: Format abhängig vom Wert mit VBA
14.03.2022 10:46:32
Luschi
Hallo Patrick,
wer seine Daten so wie auf einer Streuobstwiese organisiert, der braucht sich über Probleme beim Umgang mit diesen nicht wundern - reinsortiger Obstsaft wird da schwer zu organisieren sein.
denkt sich Luschi
aus klein-Paris
AW: Format abhängig vom Wert mit VBA
14.03.2022 10:51:26
Patrick
Hallo Lutschi,
vielen Dank für Deine Antwort. Leider hilft mir dies nur bedingt. Ich gehe davon aus, Du meinst, ich solle keine Datumswerte mit Zahlenformate vermengen. Leider habe ich keine bessere Möglichkeit gefunden.
Viele Grüße
Patrick
AW: Nimm zwei...
14.03.2022 11:08:30
GerdL
Zellen, dann hast du dieses Problem nicht, Patrick.
Gruß Gerd

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige