• DİKKAT

    DOSYA İndirmek/Yüklemek için ÜCRETLİ ALTIN ÜYELİK Gereklidir!
    Altın Üyelik Hakkında Bilgi

Word'de tek seferde birden fazla kelimeyi değiştirme.

Katılım
5 Kasım 2010
Mesajlar
16
Excel Vers. ve Dili
2016 TR
Merhabalar arkadaşlar.
Benim bi sorunum var. Bunu kısa bir şekilde veya makro ile yapabilir miyim bu konuda yardımınıza ihtiyacım var.
Yapmam gereken şey;
Elimdeki dökümandaki birçok kelimeyi yenisiyle değiştirmem gerekiyor. Ctrl + H ile değiştir var ama. Benim istediğim birden fazla değişim olacak. Örneğin
1 kelimesi yeni1 olacak,
2 kelimesi yeni2 olacak,
3 kelimesi yeni3 olacak
... gibi
yani değişim için ayrı bi liste var elimde. Hepsi için tek tek tümünü değiştir yapmak yerine daha kısa bi yol var mı? Makro da olabilir. (Makro bilgim olmadığı için kendim yazamıyorum)
Herşey için şimdiden teşekkürler.
Saygılarımla...
 
Merhaba,
Seçenekler>Yazım denetleme>Otamatik Düzeltme Şeçenekleri oraya kaydedin. Kendisi otamatik değiştirir.
 
Öncelikle cevabınız için teşekkür ederim. Bu yöntemi denemiştim ama onda da şu sorun oluyor. Metin bir programın çıktısı olarak geliyor. Yani o an direk yazmıyoruz. Otomatik düzeltme o an yazarken düzeltiyor ama eski yazılarda değiştirme yapmıyor en azından ben yapmasını bilmiyorum.
 
O zaman belgenizi excele kopyalayıp
Sub Bul_Degistir()
aranan = Array("1", "2", "3", "4", "5", "6", "7", "8")
yeni = Array("yeni1", "yeni2", "yeni3", "yeni4", "yeni5", "yeni6", "yeni7", "yeni8")
For x = LBound(aranan) To UBound(aranan)
Cells.Replace What:=aranan(x), Replacement:=yeni(x), LookAt:=xlPart, SearchOrder _
:=xlByRows, MatchCase:=False, SearchFormat:=False, ReplaceFormat:=False
Next
End Sub
bu şekilde deneyiniz. Ben de daha önce buna benzer bir soru sormuştum. Sn leumruk cevap vermişti.
 
Emeğiniz için Çok teşekkür ederim. Wordde direk makro ile yapabilseydim daha iyi olurdu ama şimdilik idare eder gibi. Kolay gelsin
 
Rica ederim. Belki Word'e uygulanabilen makroda bulunabilir. İyi çalışmalar.
 
Merhaba,
Aşağıdaki kodu deneyin.
Kod:
Sub Makro1()
aranan = Array("1", "2", "3", "4", "5", "6", "7", "8")
yeni = Array("yeni1", "yeni2", "yeni3", "yeni4", "yeni5", "yeni6", "yeni7", "yeni8")
For x = LBound(aranan) To UBound(aranan)
    With Selection.Find
        .Text = aranan(x)
        .Replacement.Text = yeni(x)
        .Forward = True
        .Wrap = wdFindContinue
    End With
Selection.Find.Execute Replace:=wdReplaceAll
Next
MsgBox "İşlem tamamlandı.", vbInformation, "leumruk"
End Sub
 
Herşey için çok teşekkür ederim. Gayet güzel çalıştı. Emeğinize sağlık
 
Geri
Üst