ID tematu: 482
|
Jak zamienić kropki na przecinki?? |
Autor |
Wiadomość |
jan Pietrzela [Usunięty]
|
Wysłany: 15-02-2007, 13:41 Jak zamienić kropki na przecinki??
|
|
|
Kopiuję tabele z internetu w których dziesiętne znaczone są kropkami.
Excel widzi takie cyfry jako tekst. Muszę "ręcznie" zamieniać kropki na przecinki.
W jaki sposób arkusz może to robić automatycznie?? |
|
| ID posta:
2596
|
|
|
|
|
|
|
sales
Excel Expert
Zaproszone osoby: 1
Wersja: Win Office 2021
Pomógł: 317 razy Posty: 612
|
Wysłany: 15-02-2007, 15:06
|
|
|
Zaznacz obszar w którym są kropki
Powinno wystarczyć Ctrl+h
Wprowadź co chcesz zmienić czyli (.) na (,) |
|
| ID posta:
2599
|
|
|
|
|
|
Bartek
ExcelSpec
Pomógł: 69 razy Posty: 105
|
Wysłany: 15-02-2007, 15:17 Re: Jak zamienić kropki na przecinki??
|
|
|
Witaj,
jan Pietrzela napisał/a: | Kopiuję tabele z internetu w których dziesiętne znaczone są kropkami. Excel widzi takie cyfry jako tekst. Muszę "ręcznie" zamieniać kropki na przecinki.
W jaki sposób arkusz może to robić automatycznie?? |
Aby całkiem to zautomatyzować, użyj zdarzenia Worksheet_Change, które wywoła opcję zamiany - prawym przyciskiem na zakładkę arkusza i wyświetl kod, potem wklej kod:
Kod: | Private Sub Worksheet_Change(ByVal Target As Range)
Target.Select
Application.EnableEvents = False
Application.SendKeys "^h.{TAB},%w{ENTER}"
Application.EnableEvents = True
End Sub |
Będzie działało dla każdych fdanych, które wkleisz czy wpiszesz ręcznie. Kod jest taki śmieszny, bo dokładnie naśladuje ręczne wywołanie zamiany.
Teoretycznie, powinno działać coś takiego:
Kod: | Target.Replace What:=".", Replacement:="," |
Ale nie działa (sprawdżcie np. dla "10.333"), bo wywołanie funkcji Replace z VBA ma inne priorytety konwersji niż wywołanie ręczne. |
_________________ Sto gier w Excelu i nie tylko... |
|
| ID posta:
2600
|
|
|
|
|
|
Tajan
Pomógł: 5501 razy Posty: 11968
|
Wysłany: 15-02-2007, 21:59 Re: Jak zamienić kropki na przecinki??
|
|
|
Bartek napisał/a: |
Teoretycznie, powinno działać coś takiego:
Kod: | Target.Replace What:=".", Replacement:="," |
Ale nie działa (sprawdżcie np. dla "10.333"), bo wywołanie funkcji Replace z VBA ma inne priorytety konwersji niż wywołanie ręczne. |
Ale zadziała takie coś:
Kod: |
Target.Replace What:=".", Replacement:="."
|
Właśnie z powodu tych priorytetów.
Innym prostym sposobem jest zaznacznie kolumny do konwersji i użycie menu Dane/Tekst jako kolumny. Po przejściu do ostatniego kroku kreatora, w opcji Zaawansowane nalezy wybrać kropkę jako separator. |
|
| ID posta:
2622
|
|
|
|
|
|
|
Nie możesz pisać nowych tematów Nie możesz odpowiadać w tematach Nie możesz zmieniać swoich postów Nie możesz usuwać swoich postów Nie możesz głosować w ankietach Nie możesz załączać plików na tym forum Możesz ściągać załączniki na tym forum
|
Dodaj temat do Ulubionych Wersja do druku
|
|
Strona uĹźywa plikĂłw cookies.
Kliknij tutaj, Ĺźeby dowiedzieÄ siÄ jaki jest cel uĹźywania cookies oraz jak zmieniÄ ustawienia cookie w przeglďż˝darce.
KorzystajÄ
c ze strony uĹźytkownik wyraĹźa zgodÄ na uĹźywanie plikĂłw cookies, zgodnie z bieĹźÄ
cymi ustawieniami przeglÄ
darki.
SprawdĹş, w jaki sposĂłb przetwarzamy dane osobowe
|