Mam zadanie utworzenia prostego arkusza programu Excel, który pobierze nieokreśloną liczbę wierszy w kolumnie A w następujący sposób:
1234
123461
123151
11321
I przekształć je w listę oddzieloną przecinkami w innej komórce, którą użytkownik może łatwo skopiować i wkleić do innego programu w następujący sposób:
1234,123461,123151,11321
Jak najłatwiej to zrobić?
microsoft-excel
Muncherelli
źródło
źródło
Odpowiedzi:
Zakładając, że Twoje dane zaczynają się od A1, wstawiłbym następującą kolumnę B:
B1:
B2:
Następnie możesz wkleić kolumnę B2 w dół całej kolumny. Ostatnia komórka w kolumnie B powinna być teraz oddzieloną przecinkami listą kolumny A.
źródło
,
), naciśnij Ctrl- H(Znajdź i zamień)^p
,
źródło
Jeśli masz Office 365 Excel, możesz użyć TEXTJOIN ():
źródło
Właśnie utworzyłem moduł w VBA, który wykonuje całą pracę. Pobiera moją listę odległości i tworzy ciąg rozdzielany przecinkami, który jest wyprowadzany do wybranej komórki:
Więc w mojej komórce właśnie wstawiłem
=csvRange(A:A)
i daje mi listę rozdzielaną przecinkami.źródło
Alternatywnym podejściem byłoby wklejenie kolumny Excela do tego narzędzia w przeglądarce:
convert.town/column-to-comma-separated-list
Konwertuje kolumnę tekstu na listę oddzieloną przecinkami.
Ponieważ użytkownik mimo to kopiuje i wkleja do innego programu, może to być dla nich równie łatwe.
źródło
Możesz zrobić coś takiego. Jeśli nie mówisz o dużym arkuszu kalkulacyjnym, wykona to „ok” ...
Oto kod makra VBA:
Pamiętaj, aby ustawić format komórki B1 na „tekst”, inaczej dostaniesz pomieszaną liczbę. Jestem pewien, że możesz to zrobić również w VBA, ale nie jestem pewien, jak w tej chwili i muszę wrócić do pracy. ;)
źródło
Użyj vi lub vim, aby po prostu umieścić przecinek na końcu każdej linii:
Aby wyjaśnić to polecenie:
%
oznacza wykonaj akcję (tj. znajdź i zamień) dla wszystkich liniis
wskazuje na podstawienie/
oddziela argumenty (tj.s/find/replace/options
)$
reprezentuje koniec linii,
to tekst zastępczy w tym przypadkuźródło
Przydałby się przewodnik How-To Geek na temat przekształcania wiersza w kolumnę i odwracania go. Następnie wyeksportuj dane jako plik csv (format rozdzielany przecinkami), a otrzymasz listę tekstową oddzieloną przecinkami! Możesz skopiować z notatnika i ponownie umieścić go w programie Excel, jeśli chcesz. Ponadto, jeśli chcesz wstawić spację po przecinku, możesz wykonać funkcję wyszukiwania i zamiany, zastępując „,” na „,”. Mam nadzieję, że to pomaga!
źródło
Muncherelli, podobała mi się twoja odpowiedź i poprawiłem ją :). Drobna rzecz, czasami pobieram dane z arkusza i używam go do przeszukiwania bazy danych. Dodałem opcjonalny parametr „textQualify”, który pomaga utworzyć listę oddzieloną przecinkami, którą można wykorzystać w zapytaniu.
źródło
Ulepszyłem sub generatecsv () do obsługi arkusza programu Excel zawierającego wiele list z pustymi liniami oddzielającymi zarówno tytuły każdej listy, jak i listy od ich tytułów. przykład
i łączy je oczywiście w wiele rzędów, po 1 na listę.
z tego powodu, że klient przesłał mi wiele słów kluczowych w formacie listy dla swojej witryny internetowej w oparciu o tematykę, potrzebowałem sposobu na łatwe wprowadzenie tych słów kluczowych na strony internetowe. Zmodyfikowałem więc procedurę i wymyśliłem następujące, zmieniłem też nazwy zmiennych na znaczące:
źródło
Odpowiedź Sux2Lose jest moją preferowaną metodą, ale nie działa, jeśli masz do czynienia z więcej niż kilkoma tysiącami wierszy, i może się popsuć dla jeszcze mniejszej liczby wierszy, jeśli twój komputer nie ma dużo dostępnej pamięci.
Najlepszą praktyką w tym przypadku jest prawdopodobnie skopiowanie kolumny, utworzenie nowego skoroszytu, wcześniejszej specjalnej
A1
wersji nowego skoroszytu,Transpose
tak aby kolumna była teraz wierszem. Następnie zapisz skoroszyt jako.csv
. Twój plik csv jest teraz w zasadzie listą tekstową oddzieloną przecinkami, którą możesz otworzyć w edytorze tekstu.Uwaga: pamiętaj o przeniesieniu kolumny do wiersza przed zapisaniem jako csv. W przeciwnym razie Excel nie będzie wiedział, jak wstawiać przecinki między wartościami.
źródło
Jednym z najprostszych sposobów jest użycie aplikacji internetowej zamazin.co do tego rodzaju zadań oddzielania przecinków. Wystarczy wypełnić dane kolumny i nacisnąć przycisk konwersji, aby utworzyć listę oddzieloną przecinkami. Możesz nawet użyć innych ustawień, aby poprawić pożądaną wydajność.
http://zamazin.co/comma-separator-tool
źródło
Użyj
=CONCATENATE(A1;",";A2;",";A3;",";A4;",";A5)
w komórce, w której chcesz wyświetlić wynik.źródło