Soldan "_" karakterine kadar eşleştirme

Katılım
5 Eylül 2007
Mesajlar
1,247
Excel Vers. ve Dili
ofis 2010
Altın Üyelik Bitiş Tarihi
21-07-2024
İyi günler;
Siteden klasördeki dosya ismini toplu değiştirme çalışmasını indirdim. İndirdiğim PDF dosyaların başında firmanın TC veya Vergi No.su oluyor. Ana Excel çalışma sayfasında B sütununda birinci dosya var. C sütunu ise boş. Firmalar çalışma sayfasında ise soldan ilk "_" simgeye kadar vergi ve TC no.larına göre firmaların isimleri var. B sütundaki "_" simgesine kadar kısmı baz alarak Firmalar çalışma sayfasındaki firmanın ismi olacak şekilde C sütununa yazdırmamız makro ile mümkün olabilir mi? Manuel oldukça uzun ve zor oluyor. sütunları metne dönüştürüp ayrıştırmak, isime göre bulup tekrar birleştirmek, ilgili yeri formülle getirmek zahmetli oluyor. Makro ile yapılabilirse oldukça pratik ve güzel bir çalışma olacak. Teşekkürler.
238154 238155
 

Ekli dosyalar

Katılım
5 Eylül 2007
Mesajlar
1,247
Excel Vers. ve Dili
ofis 2010
Altın Üyelik Bitiş Tarihi
21-07-2024
Kod:
Sub ANA_eslestir()
Set s1 = Sheets("Sayfa6")
Set s2 = Sheets("Sayfa1")

son1 = s1.Cells(Rows.Count, "A").End(3).Row
son2 = s2.Cells(Rows.Count, "B").End(3).Row

For i = 2 To son2
    If WorksheetFunction.CountIf(s1.Range("A1:A" & son1), s2.Cells(i, "B")) > 1 Then
        s2.Cells(i, "C") = "Birden fazla kayıt"
    ElseIf WorksheetFunction.CountIf(s1.Range("A1:A" & son1), s2.Cells(i, "B")) = 0 Then
        s2.Cells(i, "G") = "Kayıt yok"
    Else
        a = WorksheetFunction.Match(s2.Cells(i, "A"), s1.Range("B1:B" & son1), 0)
        s2.Cells(i, "C") = s1.Cells(a, "I")
        's2.Cells(i, "I") = s1.Cells(a, "")
    End If
Next
End Sub
Merhaba; çalışmamı bir şekilde tamamladım son bir işlem var, takıldım.
Sayfa6'da A hücresi ve Sayfa1'deki "B" hücresi eşit.
Sayfa1'deki "B" hücresindeki değeri, Sayfa6'daki "A" hücresiyle eşleştirerek Sayfa6'daki "I" hücresini, Sayfa1'in C hücresine getirmek istiyorum. Formülde hata yok gibi duruyor, ancak hata veriyor.
 

Ekli dosyalar

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
42,256
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Görsel yerine örnek dosya paylaşırsanız daha hızlı sonuç alabilirsiniz.
 
Katılım
5 Eylül 2007
Mesajlar
1,247
Excel Vers. ve Dili
ofis 2010
Altın Üyelik Bitiş Tarihi
21-07-2024
Merhaba;
Ofis2010 ile kullanılan
a = WorksheetFunction.Match(s2.Cells(i, "A"), s1.Range("B1:B" & son1), 0)
bulma makrosunda eşleşecek değer 40 hücre olduğu için hata veriyor. Uzunluğu kısalttığımda çalışıyor, bu haliyle çalışmıyor. Bu formülü nasıl güncelleyebilirim. Teşekkürler.
 
Üst