Novo

Forum kao aplikacija na telefonu

Dodajte forum na početni ekran i koristite ga kao aplikaciju, sa menijem na dnu ekrana.

  • 4 odgovora
  • 3.394 pregleda

Najnovija ↓

Zamena vise razlicitih reci odjednom? 11.08.2009. u 01:22 · pre 209 meseci #1
da li postoji neki program ili plugin za word koji ce mi omoguciti zamenu vise reci odjednom...u fazonu da zadam listu sta sa cime zamenuti i da on to odradi...

Sve ovo mi treba zbog editovanja hrvatskih prevoda filmova na srpski....pa da ne bi radio replace svaku rec posebno onda bi mi dobro dosla neka takva alatka...
Re: Zamena vise razlicitih reci odjednom? 11.08.2009. u 09:34 · pre 209 meseci #2
Evo malog primera kako mozes da povezes Excel i Word programirajuci u VBA - i naravno da resis svoj problem

1. Otvori samo onaj Word dokument u kome treba da zamenis reci
2. Otvori Excel fajl u kojem si uneo: u koloni A spisak reci koje trazis a u koloni B reci kojima ih menjas
3. Iskoristi sledeci kod (u Excelu)

Code:

Sub ReplaceInWord()
' Najpre u VB Editoru Tools/ References i ukljuciti
' Microsoft Word x.x Object Library
' Gde je x.x vasa verzija Worda

Dim wdApp As Word.Application, wdDoc As Word.Document
Dim curCell As Range
Dim curRow As Long

    On Error Resume Next

    '
    ' Proveri da li je Word vec startovan
    '
    Set wdApp = GetObject(, "Word.Application")
    If Err.Number <> 0 Then
        MsgBox "Moras otvoriti i Word dokument sa tekstom", vbCritical, "Word Replace - Error"
    Else

        wdApp.Visible = True
                
        ' Prodji kroz sve celije u koloni A
        ' Pocevsi od 1. reda
        curRow = 1
        Set curCell = Cells(curRow, 1)
        Do While curCell.Value <> ""

            ' Zameni reci na sledeci nacin:
            ' rec koju imas u koloni A sa recju u koloni B
            With wdApp
                .Selection.Find.ClearFormatting
                .Selection.Find.Replacement.ClearFormatting
                With .Selection.Find
                    .Text = curCell.Value
                    .Replacement.Text = curCell.Offset(0, 1).Value
                    .Forward = True
                    .Wrap = wdFindContinue
                    .Format = False
                    .MatchCase = False
                    .MatchWholeWord = True
                    .MatchWildcards = False
                    .MatchSoundsLike = False
                    .MatchAllWordForms = False
                End With
                .Selection.Find.Execute Replace:=wdReplaceAll
            End With
            
            curRow = curRow + 1
            Set curCell = Cells(curRow, 1)
        Loop
        
    End If

End Sub



Pozdrav
Re: Zamena vise razlicitih reci odjednom? 17.12.2009. u 14:48 · pre 205 meseci #3
Pozdrav,

Timmy slucajno nabasam na ovo i obradujem se ! Ima nade da se spasim od riljanja i search & replace koji traje u nedogled.

Pitanje : imali ovako neka caka koja bi se koristila za zamenu istih polja samo u excelu, a ne u Wordu.
Recimo da imam sheet koji bi sadrzao kolonu A i kolonu B celija u koloni a one koje se menjaju u koloni B one sa kojima se menjaju. A da izmene pravim u nekom novom excel fajlu .. ??

hvala unapred ! ;)

pozzzzz
Re: Zamena vise razlicitih reci odjednom? 24.12.2009. u 05:31 · pre 205 meseci #4
Ubaci sledeci kod u novi dokument u kome su u koloni A reci koje trazis a u koloni B reci kojima ih menjas,
zatim otvori sve one Excel fajlove u kojima treba menjati reci i startuje proceduru. Obrati paznju da ti Undo
nece biti od pomoci pa je mozda najbolje da prvo bekapujes sve te Excel fajlove.

Code:

Sub Replace()

Dim curCell As Range
Dim curRow As Long
Dim i As Integer
Dim strSearchFor As String
Dim strReplaceWith As String

    On Error Resume Next

    '
    ' Proveri da li ima jos otvorenih Excel fajlova
    '
    If Workbooks.Count = 1 Then
        MsgBox "Moras otvoriti i ostale Excel fajlove", vbCritical, "Workbooks replace - Error"
    Else

        ' Prodji kroz sve otvorene fajlove i napravi izmene
        '
        For i = 1 To Workbooks.Count
            If Workbooks(i).Name <> ThisWorkbook.Name Then

            
                ' Prodji kroz sve celije u koloni A
                ' Pocevsi od 1. reda
                '
                curRow = 1
                Set curCell = ThisWorkbook.ActiveSheet.Cells(curRow, 1)
                strSearchFor = curCell.Value
                strReplaceWith = curCell.Offset(0, 1).Value
                
                Do While strSearchFor <> ""

                    Workbooks(i).ActiveSheet.Cells.Replace What:=strSearchFor, Replacement:=strReplaceWith, _
                        LookAt:=xlPart, SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
                        ReplaceFormat:=False
                
                    curRow = curRow + 1
                    Set curCell = ThisWorkbook.ActiveSheet.Cells(curRow, 1)
                    strSearchFor = curCell.Value
                    strReplaceWith = curCell.Offset(0, 1).Value
               
                Loop
                   
            End If
        Next i     
        
    End If

End Sub


Pozdrav
Re: Zamena vise razlicitih reci odjednom? 09.01.2010. u 00:22 · pre 204 meseca #5
veliko hvala jos jednom ! super pomoc,
nego primeito sam gresku ne tolerise razmak

recimo po mustri menja :
Bac u backu palanku
petrovac u budvu

eh sada kada naidje na rec
backi petrovac on to promeni u "backa palankaKI budva"

moze li se to nekako izbeci ?

Prijavite se da biste odgovorili u ovoj temi.PrijavaRegistracija

Premeštanje teme