Zmiana formatów daty komórki na format tekstowy i zachowanie mm / dd / rr
2
Muszę zmienić daty komórek w formacie ogólnym (mm / dd / rr) na format tekstowy w celu przesłania do Peoplesoft. Jednak muszę zachować mm/dd/yy. Kiedy zmieniam komórkę z ogólnego formatu na tekstowy, to zmienia datę na datę z numerem seryjnym, np. 41982Itd. Nie chcę daty z numerem seryjnym. Musi pozostać komórką formatu tekstowego z mm/dd/yylub mm/dd/yyyyitd.
Wybierz komórki zawierające daty, które chcesz przekonwertować na sformatowany tekst i uruchom to małe makro:
Sub TextDate()
Dim r As Range, st As String
For Each r In Selection
If r.Value <> "" Then
r.NumberFormat = "mm/dd/yyyy"
st = r.Text
r.Clear
r.NumberFormat = "@"
r.Value = st
End If
Next r
End Sub
Makra są bardzo łatwe w instalacji i obsłudze:
ALT-F11 wyświetla okno VBE
ALT-I ALT-M otwiera nowy moduł
wklej i zamknij okno VBE
Jeśli zapiszesz skoroszyt, makro zostanie z nim zapisane. Jeśli używasz nowszej wersji programu Excel, a następnie 2003, należy zapisać plik jako .xlsm zamiast .XLSX
Dzięki Studentowi Gary'ego! To wydaje się być rozwiązaniem. Niesamowite!
user408615
0
Kiedy zmieniam komórkę z formatu ogólnego na format tekstowy ...
Prawidłowym wyborem jest format „Data” w tym oknie dialogowym.
Daty są przechowywane jako liczby, liczba dni liczona jest od daty bazowej - tzn. Każda dodana „1” jest dodana 24 godziny. Data bazowa różni się w zależności od powiązanych ustawień w programie Excel.
Jeśli potrzebujesz, aby komórki zawierały FORMATOWANY TEKST;
upewnij się, że widzisz daty w odpowiednim formacie
Wybierz komórki (Przytrzymaj CTRL, aby wybrać nieprzylegające komórki)
Wybierz Kopiuj z menu lub Wstążki
Wybierz Wklej specjalnie z menu lub Wstążki
Wybierz „Wklej wartości” z okna dialogowego i kliknij OK
Myślę, że OP musi mieć format tekstowy, aby Peoplesoft mógł to zaakceptować. Musi to jednak być wartość tekstowa w formacie MM / DD / RRRR.
Inżynier Toast
OP mówi dokładnie to, co umieściłem w pierwszym wierszu, co nie jest całkowicie jasne w znaczeniu.
Hannu
Wyjaśnione wzdłuż wskazanego znaczenia.
Hannu
-1, „Wklej wartości” nadal kopiuje liczby, to nie działa.
Doc Brown,
0
Jeśli zamierzasz wziąć kolumnę daty do danych wejściowych i użyć jej w SQL do załadowania do tabeli PS, ustawiłbym format kolumny na odpowiednią datę. Kiedy już zrozumiesz, jak PS potrzebuje daty (która jest specyficzna dla DB i wymaga trochę prób i błędów), możesz następnie utworzyć wywołanie w formacie SQL za pomocą TO_DATE. Na przykład, jeśli data ma być MM / DD / RRRR na 26.11.2018, polecenie będzie wyglądać jak TO_DATE („11/26/2018”, „MM / DD / RRRR”). Pierwsza zmienna przechwytuje dane, które mają zostać wprowadzone, a druga określa formatowanie. Innym sposobem wykorzystania tego byłoby usunięcie kresek z daty i użycie zmiennej formatowej do zdefiniowania układu daty: TO_DATE („11262018”, „MMDDYYYY”).
Prawidłowym wyborem jest format „Data” w tym oknie dialogowym.
Daty są przechowywane jako liczby, liczba dni liczona jest od daty bazowej - tzn. Każda dodana „1” jest dodana 24 godziny. Data bazowa różni się w zależności od powiązanych ustawień w programie Excel.
Jeśli potrzebujesz, aby komórki zawierały FORMATOWANY TEKST;
źródło
Jeśli zamierzasz wziąć kolumnę daty do danych wejściowych i użyć jej w SQL do załadowania do tabeli PS, ustawiłbym format kolumny na odpowiednią datę. Kiedy już zrozumiesz, jak PS potrzebuje daty (która jest specyficzna dla DB i wymaga trochę prób i błędów), możesz następnie utworzyć wywołanie w formacie SQL za pomocą TO_DATE. Na przykład, jeśli data ma być MM / DD / RRRR na 26.11.2018, polecenie będzie wyglądać jak TO_DATE („11/26/2018”, „MM / DD / RRRR”). Pierwsza zmienna przechwytuje dane, które mają zostać wprowadzone, a druga określa formatowanie. Innym sposobem wykorzystania tego byłoby usunięcie kresek z daty i użycie zmiennej formatowej do zdefiniowania układu daty: TO_DATE („11262018”, „MMDDYYYY”).
źródło