Dieses Forum nutzt Cookies
Dieses Forum verwendet Cookies, um deine Login-Informationen zu speichern, wenn du registriert bist, und deinen letzten Besuch, wenn du es nicht bist. Cookies sind kleine Textdokumente, die auf deinem Computer gespeichert werden. Die von diesem Forum gesetzten Cookies werden nur auf dieser Website verwendet und stellen kein Sicherheitsrisiko dar. Cookies aus diesem Forum speichern auch die spezifischen Themen, die du gelesen hast und wann du zum letzten Mal gelesen hast. Bitte bestätige, ob du diese Cookies akzeptierst oder ablehnst.

Ein Cookie wird in deinem Browser unabhängig von der Wahl gespeichert, um zu verhindern, dass dir diese Frage erneut gestellt wird. Du kannst deine Cookie-Einstellungen jederzeit über den Link in der Fußzeile ändern.

Zellformat unterschiedlich
#1
Hallo,

warum kommt das so unterschiedlich?
Wie erreiche ich, daß die untere Zelle gleich formatiert ist, wie die obere?

Arbeitsblatt mit dem Namen 'Zusammenfassung'
A
3004622.09.18 12:22
3004722.09.2018 13:22:13

ZelleFormatWert
A30046TT.MM.JJ hh:mm;@22.09.2018 12:22:13
A30047TT.MM.JJ hh:mm;@22.09.2018 13:22:13
Verwendete Systemkomponenten: [Windows (32-bit) NT 10.00] MS Excel 2016
Diese Tabelle wurde mit Tab2Html (v2.6.0) erstellt. ©Gerd alias Bamberg

Seit neuestem ist die Original-Zelle mit einem führenden Leerzeichen vor dem Datum. Seither formatierte ich es mit =b1*1 um, nun mache ich das Leerzeichen mit TRIM weg.
So wird das Datum umformatiert:
   ' hier wird die Datumsspalte umformatiert 
   ' Spalte einfügen 
   Columns(3).Insert shift:=xlRight
   
   loLetzte = Cells(Rows.Count, 2).End(xlUp).Row        ' letzte belegte Zelle 
   Range("C1") = "Zeit"
   With Range(Cells(2, 3), Cells(loLetzte, 3))
      ' Formel in Spalte C eintragen 
      .Formula = "=TRIM(B2)"      '"=B1*1" 
      ' Datums-Format für Spalte C 
      .NumberFormat = "dd/mm/yy hh:mm"
      ' Bereich kopieren 
      .EntireColumn.AutoFit
      .Copy
   End With
   ' Werte an gleicher Stelle einfügen 
   Cells(2, 3).PasteSpecial Paste:=xlPasteValues
   ' Spalte B löschen 
   Columns(2).Delete shift:=xlLeft

Ich will aber weiterhin das Datum mit nur 2-stelliger Jahreszahl haben.
Antworten Top
#2
Hi Ralf,

gelöscht - habe eine Bemerkung in deiner Frage übersehen.
Gruß Günter
Jeder Fehler erscheint unglaublich dumm, wenn andere ihn begehen.
angebl. von Georg Christoph Lichtenberg (1742-1799)
Antworten Top
#3
Hi,

ich habe es jetzt so gelöst:
Code:
.FormulaR1C1 = "=(MID(RC[-1],2,6)&MID(RC[-1],10,11))*1"
Antworten Top
#4
Verwende eien 'intelligente' Tabelle.
Zum übersetzen von Excel Formeln:

http://dolf.trieschnigg.nl/excel/index.p...gids=en+de
Antworten Top
#5
Hallo,

probiere es mal mit der Funktion Wert.

=wert(A30047)

Dann wird die vermutliche Zahl in eine echte Umgewandelt und nimmt auch ein Zahlenformat an, das man ihr zuweist.

Gruß

Andreas
[-] Folgende(r) 1 Nutzer sagt Danke an Andreas Ganster für diesen Beitrag:
  • Rabe
Antworten Top
#6
Hallo Rabe,

wie Andreas etwas anders vorschlug, mit WERT() oder *1 :
   ' hier wird die Datumsspalte umformatiert
' Spalte einfügen
Columns(3).Insert shift:=xlRight

loLetzte = Cells(Rows.Count, 2).End(xlUp).Row ' letzte belegte Zelle
Range("C1") = "Zeit"
With Range(Cells(2, 3), Cells(loLetzte, 3))
' Datums-Format für Spalte C
.NumberFormat = "dd/mm/yy hh:mm"
' Formel in Spalte C eintragen
.Formula = "=VALUE(B2)"
' oder
'.Formula = "=TRIM(B2)*1"
' Werte an gleicher Stelle einfügen
.Value = .Value
.EntireColumn.AutoFit
End With
' Spalte B löschen
Columns(2).Delete shift:=xlLeft
Gruß Uwe
[-] Folgende(r) 1 Nutzer sagt Danke an Kuwer für diesen Beitrag:
  • Rabe
Antworten Top
#7
Hallo,

ich habe nun alle Versionen eingebaut:

Code:
...
   With Range(Cells(2, 3), Cells(loLetzte, 3))                'geht da auch Range("C2:C" & loLetzte)?
      ' Datums-Format für Spalte C
      .NumberFormat = "dd/mm/yy hh:mm"
      ' Formel in Spalte C eintragen
      .Formula = "=VALUE(B2)"
      '.FormulaR1C1 = "=(MID(RC[-1],2,6)&MID(RC[-1],10,11))*1"
      '.Formula = "=TRIM(B2)*1"
      '.Formula = "=B1*1"        'bringt Fehler wegen Leerzeichen vor dem String
      ' Bereich kopieren
      .EntireColumn.AutoFit
      .Copy
   End With
...

So umgestellt, daß das Zellformat zuerst eingestellt wird und dann alle Lösungen ausprobiert.
Bis auf die letzte, ursprüngliche von mir, funktionieren alle gleich gut.

Was mir auffällt: im Ergebnis sind dann immer 2 Leerzeichen zwischen Datum und Uhrzeit.
Wenn ich die Anzeige aber als "Datum Uhrzeit" mit nur 2 Jahreszahlen formatiere (siehe oben das NumberFormat), wird nur ein Leerzeichen angezeigt.

Danke an euch beide!
Antworten Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste