Adres Ayrıştırma

Katılım
16 Mart 2006
Mesajlar
38
Arkadaşlar herkese merhabalar;

bana yardımcı olabilecek arkadaşların olabileceği düşüncesi ile yazıyorum.Adres ayırma gibi ciddi bir zaman kaybına neden olan bir işlevimiz var.Benim istediğim özellikler şöyle umarım yardımlarınızı esirgemezsiniz.Elimizde ham bir adres datası var ve bunu bölge bölge ayırmamız gerekiyor mesela 1.bölge için x semt 2.bölge için x semt bu böyle 3 4 5 6 diye gidiyor.Benim sormak istediğim böyle bir program excelde mümkünmü mesela ben programa 1.bölge için geçerli olacak semt veya şehirleri tanımlayacağım bu 2.ve diğer bölgeler içinde geçerli olacak.Excel datasını programa aktardığımda bu ayrımın 1.2.3 ve diğer bölgelere bölünmüş halde gerçekleşmesi lazım.(bir nevi tüm adres içerisinde kelime tanıyacak.İnanıyorum ki excel'i bilen arkadaşlar için çok basit bir konu ama ne yapayım bilmiyorum işte :)Yardımı olacak ve yardım etmeyi düşünen arkadaşlara sonsuz teşekkürlerimi şimdiden sunuyorum.
 
Katılım
5 Nisan 2007
Mesajlar
413
Excel Vers. ve Dili
excel 2010 tr
Arkadaş adres ayırma istiyor

Merhabalar

Sorunuzu örnek bir dosya ile destekler misiniz?
yani şöyle üstadım

1.sayfa adresler datası olacak 2.sayfa ve diğer sayfalar açılan kutu seçilen adrese bağlanıcak bu şekilde bir ulaşım isteniyor anladığım kadarıyla; yine karıştım ama yani bul makrosu . ve aktar makroları olacak benim anladığım kadarı ile
 
Katılım
5 Nisan 2007
Mesajlar
413
Excel Vers. ve Dili
excel 2010 tr
yani şöyle bişeymi?

Arkadaşım sorduğunuz soruya göre örnek bir tablo hazırladım bir inceleyin ve isteklerinizi o tablo üzerinde yazarak daha net belirtin.
 
Katılım
16 Mart 2006
Mesajlar
38
Öncelikle ilgilendiğiniz için teşekkür ederim.Arkadaşlar örnek aşağıda elimden geldiğince açıklayıcı olmaya çalıştım.Umarım anlatabilmişimdir.
 
Son düzenleme:
Katılım
15 Haziran 2006
Mesajlar
3,704
Excel Vers. ve Dili
Excel 2003, 2007, 2010 (TR)
Merhabalar

Aşağıdakileri standart bir modül sayfasına kopyalayanız veya örnek dosyayı inceleyiniz.

Kod:
Option Explicit
Sub Adres_Ayristir()
Dim shA As Worksheet, shS As Worksheet, shR As Worksheet
Dim bul As Range
Dim i&, y&
Dim adres As String
Set shA = Sheets("İŞLENECEK MÜŞTERİ ANA DATASI")
Set shS = Sheets("SEMT VERİTABANI")
For i = 1 To shS.Cells(65536, 1).End(xlUp).Row
    Set bul = shA.Columns(2).Find(shS.Cells(i, 1))
    If Not bul Is Nothing Then
       adres = bul.Address
       On Error Resume Next
       Set shR = Sheets(shS.Cells(i, 1).Text)
       shR.Cells.ClearContents
       If Err.Number <> 0 Then
          Set shR = Sheets.Add(, Sheets(Sheets.Count))
          shR.Name = shS.Cells(i, 1)
          Err.Number = 0
       End If
       Do
          y = y + 1
          shR.Cells(y, 1) = bul.Offset(0, -1)
          shR.Cells(y, 2) = bul
          Set bul = shA.Columns(2).FindNext(bul)
       Loop While Not bul Is Nothing And bul.Address <> adres
       Set shR = Nothing
    End If
    y = 0
Next i
MsgBox "Bölgelere ayırma işlemi tamamlandı. Sayfaları kontrol ediniz.", vbInformation, "TAMAMLANDI..."
Set shA = Nothing
Set shS = Nothing
End Sub
 
Katılım
16 Mart 2006
Mesajlar
38
merhaba &#231;al&#305;&#351;man&#305;z i&#231;in te&#351;ekk&#252;r ederim san&#305;r&#305;m bu i&#351;i geli&#351;rmenizi isteyece&#287;im biraz tabii zaman&#305;n&#305;z uyunsa.size msnden ula&#351;abilirmiyim?
 
Üst