Zapobiegaj konwertowaniu tekstu do kolumn przez program Excel


1

Kiedy używam Excela do analizowania wielu dokumentów i muszę kontrolować import (tekst, a nie Ogólne, w ustawieniach importu kolumn jest najważniejszym przykładem), w jaki sposób mogę uniemożliwić Excelowi automatyczne uruchamianie importu tekstu do kolumny kreator dla mnie automatycznie. Wolę uruchamiać go ręcznie za każdym razem, nawet jeśli zdaję sobie sprawę, że Excel stara się być pomocny, robiąc to, co właśnie zrobiłam.

Po prostu nie najpierw konwertuje kolumn na tekst.

Odpowiedzi:


0

W dowolnym momencie możesz zmienić układ lub właściwości importowanych danych. W menu Dane wskaż polecenie Pobierz dane zewnętrzne, a następnie kliknij polecenie Edytuj import tekstu lub Właściwości zakresu danych.

Jeśli wybierzesz Edytuj import tekstu, wybierz plik, który pierwotnie zaimportowałeś, a następnie wprowadź zmiany w danych zewnętrznych w Kreatorze importu tekstu.

Wybierając Właściwości zakresu danych, możesz ustawić definicję zapytania, kontrolę odświeżania i opcje układu danych dla danych zewnętrznych.


0

Jeśli korzystasz z wersji programu Excel, która nie zawiera opcji „Pobierz dane zewnętrzne” w menu Dane (takiej jak Excel 2003, która jest moją podstawową wersją ze względu na antyproduktywne „uaktualnienia” pakietu Office 2007 do 2013), możesz zapobiec „pomocne” zachowanie, które narzucają ci albo przez kilka ręcznych kroków, albo przez makro (makro jest szybsze i łatwiejsze, więc umieszczam je w pliku personal.xls):

  • Dodaj skoroszyt (lub Ctrl+ N)
  • Wpisz literę Aw komórceA1
  • Kliknij komórkę A1
  • Uruchom „Tekst do kolumn” (lub Alt+ DE)
  • Wybierz rozdzielany (lub Alt+ D)
  • Trafienie Enter
  • Odznacz każde pole wyboru
  • Kliknij przycisk Zakończ (lub Alt+ F)
  • Zamknij skoroszyt; nie zapisuj.

Teraz „pomocne” zachowanie zostanie uniemożliwione po ponownym wklejeniu.

W kodzie,

' Differs from Walkenbach in that he just populated A1 if empty, did this on A1, restored A1.
' This is better IFF you are allowed to add a workbook.
Sub FixAutomaticTextToColumns()
    If ActiveSheet.ProtectContents Then MsgBox _
            "BTW, the active sheet is protected. Consider unprotecting 'ere TextToColumns"
    Workbooks.Add
    Cells(1) = "A" 'Required, else TextToColumns will error
    Cells(1).TextToColumns DataType:=xlDelimited, Tab:=False, semicolon:=False, _
                           comma:=False, Space:=False, other:=False
    ActiveWorkbook.Close False
End Sub

FWIW, napisałem tę procedurę niezależnie, a potem odkryłem, że guru / autor / programista Excela John Walkenbach opublikował coś podobnego na swojej stronie internetowej, Arkusz kalkulacyjny , zatytułowany Czyszczenie parametrów tekstu do kolumn .

Zobacz Jak dodać VBA w MS Office? dla ogólnych informacji.


1
W każdym razie dziękuję za pomoc w formatowaniu, chociaż zamierzam to usunąć, ponieważ moja doskonała praca tutaj jest najwyraźniej bardzo niedoceniana. Poświęciłem trochę czasu na opracowanie, przetestowanie i uczynienie zwięzłego użytecznym postem. I każdy, kto nie tylko trolluje, aby przegłosować, zobaczy, że jest to przydatny post wysokiej jakości. Co to jest z wami downvoters? Po prostu wycinasz cenne posty dla tych, którzy faktycznie CHCĄ odpowiedzi.
MicrosoftShouldBeKickedInNuts

1
Nie ma plagiatu. Zrobiłem pouczający komentarz, że osoby, które rozumieją Excela, mogą uznać za korzystne; jeśli nie, po prostu zignoruj ​​to. W VBA wiersz poprzedzony apostrofem jest kodem wykonywalnym, więc ignorowanie go nie spowoduje żadnych szkód. Tymczasem możesz Google Walkenbach, jeśli jesteś użytkownikiem programu Excel, który nie zna jego imienia; jest jednym z najbardziej znanych guru Excela. Ponieważ podejrzewam, że umiesz wiedzieć, napisałem własną procedurę. Potem przejrzałem inne rozwiązania w sieci, aby uniknąć marnowania czasu czytelników. Znalazłem rozwiązanie Walkenbacha, ale miało ono kompromisy; ergo, mój komentarz.
MicrosoftShouldBeKickedInNuts

Plagiat i spam to duże problemy na Stack Exchange ; tak bardzo, że czasami prosimy ludzi, aby pochylili się do tyłu, aby zapobiegawczo zaprzeczyć, aby uniknąć pozorów niewłaściwości. ……………… Wiem trochę o Excelu; Napisałem na ten temat 44 odpowiedzi, każda średnio o 1,5. Ale jestem samoukiem (z pomocą Super User i innych dobrych stron internetowych), więc nie jestem zaznajomiony z książek Walkenbach, w artykułach, oprogramowania itp I choć wątpię, że jest ktoś dokładnie taki jak ja, podejrzewam, że nie są ludzie tacy jak ja, o ile znają Excela i nie znają Walkenbacha ... (ciąg dalszy)
G-Man

(Ciąg dalszy)… więc po prostu wpisanie jego imienia w komentarzu (i tak, wiem, że wiersz poprzedzony apostrofem w VBA jest komentarzem) rodzi więcej pytań niż odpowiedzi. Lubimy, aby posty na Stack Exchange były niezależne; uwagi takie jak „możesz Google __________, jeśli nie wiesz” nie zostały dobrze przyjęte. ……………………………………………… ……………  TL; DR  Zredagowałem twoją odpowiedź, aby była jaśniejsza, pełniejsza i bardziej edukacyjna (nie będąc wredna). Oczywiście możesz wycofać i / lub dokonać dalszych zmian.
G-Man

FWIW, nie głosowałem za tobą, a tak naprawdę tylko głosowałem. …………………………………………… PS  Nie mówisz, gdzie mieszkasz. Mieszkam w Ameryce Północnej (wskazówka: północ Meksyku) i powiedziałbym, że wycofanie amerykańskiego systemu telewizji analogowej było najbardziej destrukcyjnym technologicznie ruchem w historii. W przeciwnym razie zgadzam się z większością tego, co mówisz o Microsoft. Ale odradza się także osobiste ataki .
G-Man
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.