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

Paste Spezial mit Datumswert - Problem

Paste Spezial mit Datumswert - Problem
jens
Hallo Excel-Profis,
ich habe eine Excel-Tabelle in der Datumswerte wie "01.11.2010" stehen.
Diese Liste möchte ich speichern und in eine txt importieren.
Wenn ich das mit
Selection.PasteSpecial Paste:=xlPasteValuesAndNumberFormats, Operation:=xlNone, SkipBlanks:= _
False, Transpose:=True
oder
Selection.PasteSpecial Paste:=xlPasteAll, Operation:=xlNone, SkipBlanks:= _
False, Transpose:=True
einfüge dann macht er aus den Datumsfelder eine Zahl wie 38664 oder ähnliches.
Wie kann ich es schaffen, das es weiterhin ein Datumsfeld bleibt?
Vielen Dank für eure Hilfe
Gruß Jens

10
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
der 1.11.2010 ...
07.07.2010 16:23:27
Rudi
Hallo,
...ist aber 40483.
Ein Datum ist eine Ganzzahl. Die Darstellung als Datum nur Format.
und in eine txt importieren

wenn du was aus Excel rausschaufelst, wird das aber exportiert.
Warum speicherst du die Tabelle nicht einfach als .txt? Datei-Speichern unter und .txt auswählen.
Gruß
Rudi
AW: der 1.11.2010 ...
07.07.2010 16:26:44
jens
Hallo Rudi,
vielen Dank.
Ich hatte nur irgendein Beispiel genommen.
Leider muß ich die Umwandlung in Excel machen weil noch andere Sachen bearbeitet werden.
Wie kann ich es schaffen, dass auch nach dem kopieren da das Datum steht und nicht diese 5-Stellige Zahl?
Gruß Jens
Anzeige
AW: der 1.11.2010 ...
07.07.2010 16:28:48
Rudi
Hallo,
kopiere auch die Formate.
...PasteSpecial xlformats
Gruß
Rudi
AW: der 1.11.2010 ...
07.07.2010 16:38:20
jens
Hallo Rudi,
vielen Dank, ich hatte es schon mit
Paste:=xlPasteValuesAndNumberFormats
versucht aber das hilft auch nichts.
Gruß Jens
11 88 0
07.07.2010 16:55:00
Rudi
Hallo,
wenn du mal verständlich beschreibst, wo dein Problem ist und evtl. eine Beispiel zu Verfügung stellst, wirst du auch geholfen. ;-)
Gruß
Rudi
AW: 11 88 0
07.07.2010 17:00:04
jens
Hallo Rudi,
anbei die Datei.
https://www.herber.de/bbs/user/70481.xls
Da sollte nach der Umwandlung immer noch das Datum stehen und nicht die Zahl.
Davor waren noch andere Spalten die habe ich mal gelöscht weil das interne Daten sind.
Vielen Dank schon mal
Gruß Jens
Anzeige
was soll ich damit?
07.07.2010 17:03:30
Rudi
Hallo,
kein Code+keine Beschreibung=kein Bock mehr.
Gruß
Rudi
AW: was soll ich damit?
07.07.2010 17:07:44
jens
Hallo Rudi,
sorry, ich mußte ja irgendwie die Firmendaten da rausnehmen sonst bekomme ich Ärger.
Code:
Sub Konvertieren()
Dim TbName As String
Dim i As Integer
TbName = ActiveSheet.Name
Columns("A:IV").Select
Selection.NumberFormat = "@"
'   Test Ende
Range("A2:IV257").Select
Selection.Copy
Sheets.Add After:=Sheets(Sheets.Count)
Selection.PasteSpecial Paste:=xlPasteValues, Paste:=xlPasteFormats, Operation:=xlNone,  _
SkipBlanks:= _
False, Transpose:=True
Columns("C:IV").Select
Application.CutCopyMode = False
Selection.Delete Shift:=xlToLeft
For i = 1 To 256 Step 1
If Cells(i, 2).Value = "" Then
If Cells(i, 1).Value  "" Then
Cells(i, 2).Value = Cells(i, 1).Value
End If
End If
Next
Columns("A").Select
Application.CutCopyMode = False
Selection.Delete Shift:=xlToLeft
Rows("1:3").Select
Selection.Insert Shift:=xlDown
Range("A1").Select
ActiveCell.FormulaR1C1 = "[TABLE]"
Range("A2").Select
Sheets("Tabelle1").Select
Sheets("Tabelle1").Name = TbName & ".def"
Range("A2").Select
ActiveCell.FormulaR1C1 = TbName
Range("A3").Select
ActiveCell.FormulaR1C1 = "[FIELDS]"
Range("A4").Select
Sheets(TbName).Select
Rows("1:3").Select
Selection.Delete Shift:=xlUp
End Sub

Es wird ein neues Tabellenblatt erzeugt in das alles reingeschrieben wird. Aber eben als Wert - und da bringt er aber statt des Datums die Zahl.
Gruß und sorry
Jens
Anzeige
AW: was soll ich damit?
07.07.2010 19:33:58
Rudi
Hallo,
vermutlich so:
Sub Konvertieren()
Dim TbName As String
Dim i As Integer
TbName = ActiveSheet.Name
Columns("A:IV").NumberFormat = "@"
'   Test Ende
Range("A2:IV257").Copy
Sheets.Add After:=Sheets(Sheets.Count)
Range("A1").PasteSpecial Paste:=xlPasteValues, Paste:=xlPasteFormats, Operation:=xlNone, _
SkipBlanks:= _
False, Transpose:=True
Columns("C:IV").Delete Shift:=xlToLeft
For i = 1 To 256 Step 1
If Cells(i, 2).Value = "" Then
If Cells(i, 1).Value  "" Then
Cells(i, 2).Value = Cells(i, 1).Value
End If
End If
Next
Columns("A").Delete Shift:=xlToLeft
Rows("1:3").Insert Shift:=xlDown
Range("A1") = "[TABLE]"
Columns(1).NumberFormat = "DD.MM.YYYY"
Columns(3).NumberFormat = "DD.MM.YYYY"
Sheets("Tabelle1").Name = TbName & ".def"
Range("A2") = TbName
Range("A3") = "[FIELDS]"
Sheets(TbName).Rows("1:3").Delete Shift:=xlUp
End Sub

Gruß
Rudi
Anzeige
AW: was soll ich damit?
07.07.2010 23:31:02
jens
Hallo Rudi,
vielen Dank, das mit dem NumberFormat ist es.
Nochmals vielen Dank.
Viele Grüße
Jens

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige