Centar za edukaciju-BiH


Odgovori na temu











Prosiri Boja Prosiri Velicina Spoiler WMP-Videos Neprimjereno
Podebljano Kurziv Podvuceno Slika Internet adresa (URL) Citat Van teme Neuredena lista Narucena lista Pretplata Nadredeni
Grinning Happy Cool Surprised Disappointed Laughing In love Angry No comment Embarrassing Shy Smiling Tongue Undecided Innocent Wink Sad Prosiri i skupi vise smajlica
Povecaj velicinu · Smanji velicinu Provjeri duzinu

Pretvori smajlice u postu
Pretvori & quot; vokable & quot; u postu


Upravljanje prilozima
Mozete priloziti 3 datoteke!



Posljednjih 15 postova u ovoj temi


zxz (19.01.2021 18:22):
Predmet: Re: VBA zamjena slova
eevo moja funkcija.
u str1 upisite znake koje trazite u stringu a u str2 na istoj poziciji znak u koji se mijenja.
PreuzmiIzvorni kôd (Visual Basic):
  1. Public Function fnCZtoLAT(Naziv As String) As String
  2. '******************************************************
  3. 'Autor:zxz
  4. 'datum: 19.01.2021
  5. 'mijenja karaktere iz str1 u adekvatne po poziciji u str2
  6. 'u string kao ulazni parametar Naziv
  7. '********************************************************
  8. Const str1 = "IÅ EOŽÝÁÍÉÚUiÅ¡eožýáíéúua "
  9. Const str2 = "ESCRZYAIEUUescrzyaieuucu"
  10. Dim duz As Integer, i As Integer, poz As Integer, n As Integer
  11. Dim car1 As String * 1, car2 As String * 1, str As String
  12.  
  13. duz = Len(str1)
  14. str = Naziv
  15. n = 1
  16.   For i = 1 To duz
  17.   car1 = Mid(str1, i, 1)
  18.   car2 = Mid(str2, i, 1)
  19.   poz = InStr(n, str, car1)
  20.     If poz > 0 Then
  21.     str = Replace(str, car1, car2)
  22.     End If
  23.   Next i
  24.  fnCZtoLAT = str
  25. End Function

Avko (18.01.2021 12:00):
Predmet: Re: VBA zamjena slova
Hvala Gjoreski, probat cu prilagoditi za svoje potrebe.
Problem je kod mene sto za 1 slovo daje 2 znaka :
primjer:

ÄŚ = Č

evo otkrio gdje je greska, znaci trebalo je provjeriti kolone 3,5,6.
Ja sam provjeravao kolone 5 i 6, a 3 sam zaboravio tako da mi se u 3 koloni javljali neprevedeni znakovi.
Cudno mi je bilo kada sam uneo naredbu

if Instr(naziv,"ÄŚ")>0 then stop

kod se nije zaustavio na tom mjestu tako da sam isao istrazivati i otkrio aljkavost u kodu.

upotrijebio sam Gjoreskovu funkciju koja odlicno obavlja posao.

PreuzmiIzvorni kôd (Text):
  1. Public Function fnCZtoLAT(Naziv As String) As String
  2.     fnCZtoLAT = Naziv
  3.    
  4.     fnCZtoLAT = Replace(fnCZtoLAT, "ÄZ", "C") '
  5.     fnCZtoLAT = Replace(fnCZtoLAT, "9 ", "S") 'Å 
  6.     fnCZtoLAT = Replace(fnCZtoLAT, "Ć", "C") '
  7.     fnCZtoLAT = Replace(fnCZtoLAT, "9Ç", "s") 'Å¡
  8.     fnCZtoLAT = Replace(fnCZtoLAT, "ć", "c") '
  9.     fnCZtoLAT = Replace(fnCZtoLAT, "Äd", "c") '
  10.     fnCZtoLAT = Replace(fnCZtoLAT, "Ä‘", "d") '
  11.     fnCZtoLAT = Replace(fnCZtoLAT, "9>", "z") 'ž
  12.     fnCZtoLAT = Replace(fnCZtoLAT, "9Ý", "Z") 'Ž
  13. End Function

pozivam ju na sljedeci nacin

nekiString=fnCZtoLat(nekiString)

kada nadete vremena mozete li mi reci kako upotrijebiti ovo:

FranceskoFoti je opisao kako prevesti znakove i rijesiti BOOM, usporeduje to sa Notepadom++
pa ako znate samo recite kako to upotrijebiti u VBA excelu

<franceskoFoti - Solving the Unicode, UTF8, UTF16 and Text Files conundrum in VBA>

Gjoreski (17.01.2021 21:17):
Predmet: Re: VBA zamjena slova
eve ti edna moja funkcuja mozda ke ti pomognit

PreuzmiIzvorni kôd (Visual Basic):
  1. Public Function fnCZtoLAT(Naziv As String) As String
  2.     fnCZtoLAT = Naziv
  3.     fnCZtoLAT = Replace(fnCZtoLAT, "Ì", "E")
  4.     fnCZtoLAT = Replace(fnCZtoLAT, "Å ", "S")
  5.     fnCZtoLAT = Replace(fnCZtoLAT, "È", "C")
  6.     fnCZtoLAT = Replace(fnCZtoLAT, "Ø", "R")
  7.     fnCZtoLAT = Replace(fnCZtoLAT, "Ž", "Z")
  8.     fnCZtoLAT = Replace(fnCZtoLAT, "Ý", "Y")
  9.     fnCZtoLAT = Replace(fnCZtoLAT, "Á", "A")
  10.     fnCZtoLAT = Replace(fnCZtoLAT, "Í", "I")
  11.     fnCZtoLAT = Replace(fnCZtoLAT, "É", "E")
  12.     fnCZtoLAT = Replace(fnCZtoLAT, "Ú", "U")
  13.     fnCZtoLAT = Replace(fnCZtoLAT, "Ù", "U")
  14.     fnCZtoLAT = Replace(fnCZtoLAT, "ì", "e")
  15.     fnCZtoLAT = Replace(fnCZtoLAT, "Å¡", "s")
  16.     fnCZtoLAT = Replace(fnCZtoLAT, "è", "c")
  17.     fnCZtoLAT = Replace(fnCZtoLAT, "ø", "r")
  18.     fnCZtoLAT = Replace(fnCZtoLAT, "ž", "z")
  19.     fnCZtoLAT = Replace(fnCZtoLAT, "ý", "y")
  20.     fnCZtoLAT = Replace(fnCZtoLAT, "á", "a")
  21.     fnCZtoLAT = Replace(fnCZtoLAT, "í", "i")
  22.     fnCZtoLAT = Replace(fnCZtoLAT, "é", "e")
  23.     fnCZtoLAT = Replace(fnCZtoLAT, "ú", "u")
  24.     fnCZtoLAT = Replace(fnCZtoLAT, "ù", "u")
  25.     fnCZtoLAT = Replace(fnCZtoLAT, "æ", "c")
  26.     fnCZtoLAT = Replace(fnCZtoLAT, "ü", "u")
  27.  
  28. End Function

Avko (17.01.2021 16:20):
Predmet: VBA zamjena slova
PreuzmiIzvorni kôd (Text):
  1. Dim i As Integer
  2.     Dim zadnjiRed As Single
  3.    
  4.    
  5.     zadnjiRed = 20
  6.    
  7.     AccChars = Array("ÄZ", "Äd", "Ć", "9Ç", "ć", "Ä‘", "9Ý")
  8.     RegChars = Array(" ", "", "", "Å¡", "", "", "Ž")
  9.     Dim rng As Range
  10.    
  11.     For Each cell In Range("H1:H" & zadnjiRed)
  12.         If cell <> "" Then
  13.             For i = 0 To UBound(AccChars)
  14.                 cell.Value = Replace(cell.Value, AccChars(i), RegChars(i))
  15.                
  16.             Next
  17.         End If
  18.     Next cell

meni ovo ne radi.
Dali se netko bavio problemom kada ucitamo file u excel pa moramo zamijeniti neke znakove u nasa slova?

Sva vremena su GMT +01:00. Trenutno vrijeme: 6: 51 am.