hoffe jemand kann helfen!
Ich habe ein Excel 2010-Arbeitsblatt, in dem Makros eingerichtet sind, um Daten aus anderen Blättern in ein bestimmtes Format auf einem anderen Blatt zu kopieren und für andere Prozesse zu verwenden. Die Daten, die ich kopieren muss, sind ok, aber ich habe ein Problem mit der Formatierung von Zellenbereichen, die Datums- oder Zeitwerte enthalten. Die Daten stammen aus einem Datenbank-Extrakt und alles ist im Textformat. In meinem Arbeitsblatt, wenn ich das Datum einfüge (über VBA-Code-Prozeduren), wende ich das benötigte Format an, das ist "yyyy-mm-dd"
für Daten und "hh:mm.ss.ss"
für die Zeiten.
Es gibt nie eine feste Anzahl von Zeilen, mit denen wir arbeiten, also habe ich den vba-Code so eingestellt, dass er die Formatierung auf den Zellbereich anwendet, zum Beispiel:
%Vor% Und das funktioniert ok, soweit! Aus irgendeinem Grund werden nicht alle Zellen im Bereich korrekt formatiert, aber sie werden als 15/04/2014
nicht 2014-04-15
angezeigt. Wenn ich manuell die Zelle auswähle und die F2 dann ENTER Taste drücke, erscheint das Format wie ich brauche. Dies geschieht zufällig durch den Bereich und es könnte Tausende von Zeilen geben, so dass es nicht praktikabel ist, das Arbeitsblatt manuell zu durchkreuzen, indem man F2 + ENTER auf jedes drückt.
Ich habe Hilfe im Internet angeschaut und gefunden, was ich glaube, sollte automatisch das F2 + ENTER Bit mit VBA-Codierung, aber es funktioniert nicht und ich kann Warum? (Ich bin Anfänger bei VBA!)
Der Code, den ich unten eingefügt habe, ist der, den ich bisher hatte, er ist aus einer größeren Menge Codezeilen extrahiert, also sind die dim
-Anweisungen usw. weiter oben in der Kopie, aber das sollte zeigen, wie ich ' Ich habe das bis jetzt angepackt.
Wenn ich den Code ausführe, werden die Daten in meine Arbeitsblätter kopiert, aber die Daten und Zeiten sind immer noch in einem gemischten Format. Der Versuch, das F2 + ENTER über den VBA zu erzwingen, scheint nichts bewirkt zu haben. Auch wenn es manuell gemacht wird, funktioniert es gut.
Im Folgenden finden Sie ein Beispiel für Daten, die aus den Ergebnissen im Arbeitsblatt
kopiert wurden %Vor%Jede Hilfe wäre großartig, danke Dan
Ich kann mir zwei Optionen vorstellen, mit denen Excel die Formatierung in einem Schritt auf die Zellen anwenden kann.
Die erste besteht darin, die Funktion Text zu Spalten zu verwenden, obwohl in der Spalte nichts zu teilen ist. Die zweite Option besteht darin, den Wert 1 zu kopieren und mit der Option Inhalte einfügen - Multiplizieren in die Zellen einzufügen.
Obwohl beide Methoden eine Aktualisierung der Zellformatierung erzwingen sollten, würde ich mich der ersten Option zuwenden. Dies ist in der Fall einige Ihrer Daten sind als Text gespeichert.
%Vor%Ich hatte Mühe, dies auch zur Arbeit zu bringen. Mein Problem waren nicht nur Daten, sondern auch Daten mit einem einzigen Zitat davor. Was ich zusammengehackt habe, funktioniert großartig für mich. Es reinigt sehr schnell über 70.000 Zellen. Hoffe es funktioniert für dich:
(Sie ändern den Bereich und entsprechend Ihren Anforderungen)
%Vor%Es scheint seltsam, dass Sie die Tasten F2 + Enter senden müssen. Was ist die Formatierung vor dem Ausführen des Makros? Versuchen Sie, die ganze Spalte auf diese Weise zu formatieren (dies hat keine Auswirkungen auf den Text).
%Vor%Versuchen Sie F9 oder Datei-Option-Formeln-Arbeitsbuch Berechnung-automatisch
zu drücken