Otomatik kelime değiştirme

Katılım
20 Temmuz 2012
Mesajlar
23
Excel Vers. ve Dili
2007
Merhaba,
örnek olarak c sütununda bulunan 2bin satırı aşkın farklı hücre içerisindeki cümleler ya da kelimeler arasındaki exem yazısını bulduğumuzda yan hücreye bu yazıyı exemple olarak taşınmasını nasıl sağlayabiliriz...

dexem = exemple
exematik = exemple
exem atlantik = exemple
artistik exem patinaj = exemple

olarak nasıl ayrıştırabiliriz...
Bir kelimeyi değiştir komutuyla yapabiliriz elbette ama bu komut yalnızca hücre içindeki exem kelimesini değiştirecektir. biz exem'i gördüğü her hücreyi bütün ile yana farklı olarak taşımak niyetindeyiz...

son olarak bu komutu yalnızca bir kelime için değil de başka kelimeler için de yapabilir miyiz...
yani aynı c sütunu içerisinde 2bin satıra belirliş kelimeleri tanımlayıp bu dizinde bulacağı bütün girilmiş kelimeleri yan hücrelerine gene girilen ve görüntülenmesi istenen yeni - eş kelimeler olarak nasıl atatabiliriz...

umarım çok karıştırmadan anlatabilmişimdir...
olasık dahilinde midir?
saygılarımla
 

tahsinanarat

Altın Üye
Katılım
14 Mart 2005
Mesajlar
2,168
Excel Vers. ve Dili
Ofis 2019 Türkçe
Altın Üyelik Bitiş Tarihi
27-05-2028
bir kaç örnek içeren bir dosya ekleyebilirmisiniz, cümleler yada kelimeler arasından demişsiniz, yan sutuna alınırken cümleler yada kelimelerin durumu ne olacak, onlarda yan sutuna alınacaklarmı, cevap verecek arkadaşlara ışık tutması açısından bunları yazıyorum.
 
Katılım
20 Temmuz 2012
Mesajlar
23
Excel Vers. ve Dili
2007
sisteme girilen anahtar kelimeler sütundaki ham hücrelerde aranacak, anahtar kelimeler bulunduğunda ilgili hücrenin hemen yanına bu anahtar kelime görüntülenecek (aktarılacak).. ham hücredeki mevcut bütün veriler yok olacak... (anahtar kelime ya da kelimelere dönüşecek)...
 
E

ExcelF1

Misafir
Bu isteğiniz elbette kodlar ile yapılabilir. Yalnız eklemiş olduğunuz dosyadaki veri tiplerinin çok uygun olmamasından dolayı yanlış çevirimlere de neden olunabilir.

Benim size tavsiyem; Bu işlemi yine Ctrl + H (Bul değiştir) ile yapmanız.
Şöyle yapabilirsiniz.

- Verilerinizi boş bir sütuna kopyala yapıştır yapın.
- Yapıştırma yaptığınız sütunu tutun (seçili hale getirin)
- Ctrl + H yapın.
- Aranan hanesine (örneğin beyoğlu ile ilgili veriyi değiştireceksiniz) *beyoğlu* yazın.
- Yeni Değer'e olması gereken bilgiyi yazınız.
- Ve Tamam deyiniz.

Seçili olan satırda, içinde beyoğlu geçen tüm bilgiler, yeni değere dönüştürülecektir.
Yani beyoğlu kelimesinin önündeki ve arkasındaki verilerde silinip, yeni yazdığınız verinin şeklini alacaktır.
 
Katılım
20 Temmuz 2012
Mesajlar
23
Excel Vers. ve Dili
2007
Elbette böyle yapmak mümkün ama bir kod ya da benzer bir şeyle bunu yalnızca bir kez yapıp ardından sistemin yapmasını sağlamak gerekiyor...
yani belirttiğiniz işlemi her defasında yapmak oldukça zaman alıyor...
 
Katılım
28 Mayıs 2006
Mesajlar
296
Excel Vers. ve Dili
excel 2003
Kod:
=EĞER(ESAYIYSA(MBUL("exem";C1;1));"exemple";C1)
kelimelerin c1 de yazıldığı varsayılmıştır.
formülü aşağıya doğru kopyalayın.

formülün devamında 2 veya daha fazla kelime değiştirmek mümkün
(bu formül 2 kelime için)
Kod:
=EĞER(ESAYIYSA(MBUL("exem";C1;1));"exemple";EĞER(ESAYIYSA(MBUL("aranan";C1;1));"yeni kelime";C1))
şeklinde uzatılabilir

farklı formüllerde kullanılabilir
 
Katılım
20 Temmuz 2012
Mesajlar
23
Excel Vers. ve Dili
2007
teşekkürler...
bu formülü 100 ve üzeri kelimeyi kapsayacak hale getirmek mümkün müdür?
saygılarımla
 

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
42,747
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Merhaba,

Ekteki dosyayı inceleyiniz.

Renkli sütunlara düzelecek verilerinizi girip butona tıklayın. A sütunundaki verileri düzeltecektir.
 

Ekli dosyalar

Katılım
20 Temmuz 2012
Mesajlar
23
Excel Vers. ve Dili
2007
Sayın Ayhan desteğiniz için teşekkür ederiz.
Yönlendirdiğiniz çalışmada aranan kelime girildiğinde yanındaki hücredeki olması gereken değer a sütununa çıkıyor...
Yani haftalık olarak elimizde mevcut olan karışık satırlardaki verilerin tek tek olması gereken hücrelerle yan yana getirilmesi gerekli... bu da işi gene uzatıyor...

sistemin şu şekilde çalışması mümkün müdür...
sistem bir veritabanı gibi bir şey içerisinden ona her hafta sorulan hücrelerdeki kelimeleri sorgulayacak ve veritabanına girilmiş - kaydedilmiş - keydedilecek kelimeleri bu herhafta sorulacak kelimelerle eşleştirerek kendisinde kayıtlı veriye dönüştürerek başka bir sütuna yanlarına dökecek...

eğer bu şekilde çalışan bir sistem olursa sanırım bizim işimize yarıyor...

bunun yanı sıra bize gönderdiğiniz sistemde yapılan işlem geri alınamıyor, bu değişmez bir durum mudur?...

saygılarımızla...
 

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
42,747
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Merhaba,

Makro çalıştıktan sonra geri almanız için tek şart dosyanızı kaydetmeden kapatmaktır. Bunun dışında geri dönmeniz mümkün değildir. Bu sebeple makroların istenmeyen sonuçlarına karşılık verilerinizi yedeklemeniz sizin için avantaj olacaktır. Verilerinizin kopyası üzerinde makroları çalıştırmanızı tavsiye ederim.

Ayrıca son istediğiniz işlemi örnek dosya üzerinde açıklarsanız size yardımcı olabilirim.
 

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
42,747
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Merhaba,

Sarı renkli sinema isimlerini neye göre belirliyorsunuz. Bu isimler sizde daha öncedenmi kayıtlı durumda.
 

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
42,747
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Merhaba,

Telefon numaraları olması iyi olmuş. Bunları kullanarak liste düzenlenebilir.

Aşağıdaki işlemleri uygulayın.

Sayfa1 de farklı kaynaklardan gelen listeleriniz olsun.
Sayfa2 de doğru sinema isimleri ve telefon numaraları olsun.

Bu işlemlerden sonra aşağıdaki kodu bir modüle uygulayıp çalıştırın.

Kod:
Option Explicit
 
Sub İSİMLERİ_DÜZENLE()
    Dim S1 As Worksheet, S2 As Worksheet, X As Long, BUL As Range
    
    Set S1 = Sheets("Sayfa1")
    Set S2 = Sheets("Sayfa2")
    
    For X = 2 To S1.Cells(Rows.Count, 1).End(3).Row
        If S1.Cells(X, "B") <> "" Then
            Set BUL = S2.Range("B:B").Find(S1.Cells(X, "B"))
            If Not BUL Is Nothing Then
                S1.Cells(X, "A") = BUL.Offset(0, -1)
            End If
        End If
    Next
    
    Set BUL = Nothing
    Set S1 = Nothing
    Set S2 = Nothing
    
    MsgBox "İşleminiz tamamlanmıştır.", vbInformation
End Sub
 

Emir Hüseyin Çoban

Destek Ekibi
Destek Ekibi
Katılım
11 Ağustos 2008
Mesajlar
5,892
Excel Vers. ve Dili
Office 2013 Tr - Win10 x64
. . .

Kod:
Sub kod()

For i = 1 To [a65536].End(3).Row
If Cells(i, "a") <> "" Then
 
Cells(i, "a") = Format(Cells(i, "a"), "dd.mm.yyyy")
Cells(i, "a") = Format(Cells(i, "a"), "dd.mm.yyyy")

Else
End If
Next i

End Sub
. . .
 
Üst