Centar za edukaciju-BiH


Stranice (2):1,2

#1 06.09.2010 09:21
pmiroslav Van mreze
Clan
Registrovan od:02.02.2009
Postovi:1,458


Predmet:Find and Replace
Imam jednu staru bazu koju sam iz dBase-a uvezao u Access i nakon uvoza latinična slova čČ ćĆ đĐ Å¡Å  žŽ su mi se prikazivala kao ~^ }] |\ {[ `@. Bazu sam kopirao u Excell i sa Find and Replace uspio sam sve popraviti osim ~ u ć. Znak ~ naredba Find and Replace jednostavno ne prepoznaje. Kako je baza velika i ima puno slova za mjenjati da bi se to radilo ručno dali ima kako rjeÅ¡enje.

Hvala
PreuzmiIzvorni kôd (vbnet):
  1. Public Function Izmijeni(ImeTabele As String, ZnakUBazi As String, Zamjena As String) As Variant
  2. '*******************************************
  3. 'Ime:      Izmijeni   (Function)
  4. 'Sadržaj: Promjena znaka ~ u slovo
  5. 'Autor:     ZXZ
  6. 'Datum:      09 06, 2010, 09:54:46
  7. 'Adresa: Tuzla BiH
  8. 'Email:     zxz@icentar.ba
  9. 'Ulazni parametri:Ime tabele,Znak koji '
  10. 'treba mijenjati i znak u koji se mijenja
  11. 'Izlazni parametri:Nema
  12. 'Microsoft dao 3.1-Referenca
  13. '*******************************************
  14. Dim Db As Database
  15. Dim Rs As Recordset
  16. Dim Podatak As String
  17. Dim I As Integer
  18. Dim N As Integer
  19. Dim Promjena As Boolean
  20.  
  21.  
  22.  
  23. 'On Error GoTo Greska
  24. Set Db = CurrentDb()
  25. Set Rs = Db.OpenRecordset(ImeTabele)
  26. Do While Not Rs.EOF
  27.   For I = 0 To Rs.Fields.Count - 1
  28.   If Format$(Rs.Fields(I)) <> "" Then
  29.   Podatak = Rs.Fields(I).Value
  30.   Else
  31.   Podatak = ""
  32.   End If
  33.       For N = 1 To Len(Podatak)
  34.         If Mid(Podatak, N, 1) = ZnakUBazi Then
  35.         Mid(Podatak, N) = Zamjena
  36.         Rs.Edit
  37.         Rs.Fields(I).Value = Podatak
  38.         Promjena = True
  39.         End If
  40.       Next N
  41.    Podatak = ""
  42.   Next I
  43.  
  44. If Promjena = True Then
  45. Promjena = False
  46. Rs.Update
  47. End If
  48. Rs.MoveNext
  49. Loop
  50. Izlaz:
  51. Exit Function
  52. Greska:
  53. 'GreskaB (Err.Number)
  54. Resume Izlaz
  55. Kraj:
  56. End Function

Pozdrav
Ovaj post je ureden 3 puta. Posljednja izmjena 07.09.2010 08:16 od strane zxz. ↑  ↓

#2 06.09.2010 12:43
pmiroslav Van mreze
Clan
Registrovan od:02.02.2009
Postovi:1,458


Predmet:Re: Find and Replace
Možeš li mi objasniti kako se ova funkcija koristi u mojoj bazi?
Napravio sam novi modul i kopirao u njega tvoju funkciju, međutim kada je Kompajliram izađe mi poruka:

Compile Error
Method or data member not find

i označi se red sa

Rs.Edit
Pozdrav
Ovaj post je ureden 1 puta. Posljednja izmjena 06.09.2010 12:47 od strane pmiroslav. ↑  ↓

#3 06.09.2010 13:21
zxz Van mreze
Administrator
Registrovan od:03.02.2009
Postovi:10,612


Predmet:Re: Find and Replace
'Microsoft dao 3.1-Referenca

Iskljuci aktivx a dodaj dao.
Programfiles/comonfiles/MicrosoftShared/dao
Podrška samo putem foruma, jer samo tako i ostali imaju koristi od toga.
↑  ↓

#4 06.09.2010 13:49
pmiroslav Van mreze
Clan
Registrovan od:02.02.2009
Postovi:1,458


Predmet:Re: Find and Replace
To sam u međuvremenu napravio i funkcija je prihvaćena.
Međutim neznam odakle da funkciju pozovem i kako da mi ona promjeni problematični karakter.

Pokušao sam napraviti Query:

SELECT PROCESOP.OPIS, Izmijeni([Opis]) AS NoviOpis
FROM PROCESOP;

međutim vrača mi se poruka:
Wrong number of arguments used with fubction in Query expression 'Izmijeni([Opis])'
Pozdrav
↑  ↓

#5 06.09.2010 14:00
zxz Van mreze
Administrator
Registrovan od:03.02.2009
Postovi:10,612


Predmet:Re: Find and Replace
Mozes pokrenuti funkciju iz prozora imedate.
Nista netrebas popravljati:
Procedura se poziva:
?Izmijeni(Table1,"~","ć")

eto ti ovdje sad samo promijeni ime tabele.
Nikakav sql ti netreba.
Sve ti pise na pocetku procedure.
Podrška samo putem foruma, jer samo tako i ostali imaju koristi od toga.
↑  ↓

#6 06.09.2010 14:06
pmiroslav Van mreze
Clan
Registrovan od:02.02.2009
Postovi:1,458


Predmet:Re: Find and Replace
Evo pokušao sam i napisao (moja tablica se zove "ProcesOp"

?Izmijeni(ProcesOp,"~","ć")

i javi mi se poruka

Compile Error:
ByRef argument type mismatch
Pozdrav
↑  ↓

#7 06.09.2010 14:08
zxz Van mreze
Administrator
Registrovan od:03.02.2009
Postovi:10,612


Predmet:Re: Find and Replace
Zakaci tabelu sa malim dijelom podataka.
Podrška samo putem foruma, jer samo tako i ostali imaju koristi od toga.
↑  ↓

#8 06.09.2010 14:22
pmiroslav Van mreze
Clan
Registrovan od:02.02.2009
Postovi:1,458


Predmet:Re: Find and Replace
Evo tražim ali ne mogu naći gdje se kaći primjer.

Prilozi:
Informacije o tipu datoteke za:rar  IzmjenaKaraktera.rar
Preuzimanja:335
Velicina datoteke:24.14 KB


Pozdrav
Ovaj post je ureden 1 puta. Posljednja izmjena 06.09.2010 14:24 od strane pmiroslav. ↑  ↓

#9 06.09.2010 14:56
pmiroslav Van mreze
Clan
Registrovan od:02.02.2009
Postovi:1,458


Predmet:Re: Find and Replace
To je samo polje koje sadrži problematične karaktere, ali kod mene ne radi ni u ovome Å¡to sam poslao.
Pozdrav
↑  ↓

#10 06.09.2010 15:01
zxz Van mreze
Administrator
Registrovan od:03.02.2009
Postovi:10,612


Predmet:Re: Find and Replace
Nemoze biti.
Ona greska je vjerovatno zbog nekih polja koja nisu tekst.
zato sam i trazio da zakacis primjer, a ti si umjesto da brises redove izbrisao kolone.
Probaj na ovoj mora da radi.
Ja nista nisam dirao samo pokrenui i sve odradio.
Podrška samo putem foruma, jer samo tako i ostali imaju koristi od toga.
↑  ↓

Stranice (2):1,2


Sva vremena su GMT +02:00. Trenutno vrijeme: 11: 56 am.