Kategorie szkoleń | Egzaminy | Kontakt
  • 3
  • 3
  • 117
Zaloguj się aby zadać pytanie
Pokrewne

Odpowiedzi (3)

  • 1

Możesz użyć tego kodu:

Sub zmiana()
Selection.Replace "ą", "a"
Selection.Replace "ż", "z"
Selection.Replace "ź", "z"
Selection.Replace "ę", "e"
Selection.Replace "ć", "c"
Selection.Replace "ł", "l"
Selection.Replace "ń", "n"
Selection.Replace "ó", "o"
'Selection - zaznaczony obszar
' Replace -"szukana wartość", "zamień na"
End Sub

Wystarczy, że zaznaczysz obszar, w którym chcesz zmienić znaki, i uruchomić makro 'zmiana' (Alt + F8).

Załączniki

  • xlsm

    replace.xlsm ( 14K )
Marcin_Zajac
  • Odpowiedział
  • @ Marcin_Zajac | 03.06.2014
    • 2
    • 4
    • 3
  • 0

Albo tak:

Sub ProcZamieńPolskie()
 x = "ążśźęćń󳥯ŚŹĘĆŃÓŁ"
 y = "azszecnolAZSZECNOL"
 for each k in Selection
  for i = 1 to len(x)
   k.Value = Replace(k.Value,mid(x,i,1),mid(y,i,1))
  next
 next
End Sub

Albo funkcją:

Function FunZamieńPolskie(k as String)
 x = "ążśźęćń󳥯ŚŹĘĆŃÓŁ"
 y = "azszecnolAZSZECNOL"
 FunZamieńPolskie = k
  for i = 1 to len(x)
   FunZamieńPolskie = Replace(FunZamieńPolskie,mid(x,i,1),mid(y,i,1))
  next
End Sub
  • Odpowiedział
  • @ | 07.06.2014
  • TRENER ALTKOM AKADEMII
  • 0

Jeśli chce Pan użyć funkcji, to np. w komórce B1 wprowadza Pan formułę:

=FunZamieńPolskie(A1)

Jeśli chciałby Pan hurtowo (i nieodwracalnie) zamienić polskie znaki z wielu komórek naraz, wtedy lepiej użyć makra:

ProcZamieńPolskie() (i po prostu je uruchomić z listy makr po dodaniu).
  • Odpowiedział
  • @ | 06.08.2019
  • TRENER ALTKOM AKADEMII
Komentarze
OK, wszystko jasne. Funkcja mi nie działała, ponieważ na końcu funkcji było "End Sub" a ma być "End Function"
Skomentował : @ Stanisław ,07.08.2019
  • 2
  • 1
  • 4