• DİKKAT

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

Sayılara isim atama hakkında

antitez21

Altın Üye
Katılım
26 Ocak 2013
Mesajlar
40
Excel Vers. ve Dili
Excel Vers. ve Dili Ofis 2016 TR 64 Bit
Arkadaşlar excel hakkında hiç bilgim yok.. her hücrenin içine bir sayı yazdım ve her numara aslında bir kişiye karşılık geliyor kişilerin isimlerini elle girmek yerine verdiğim numaralara karşılık tabloya otomatik atanmasını sağlayabilir miyim
 
cevabınız için teşekkürler ama yapamadım Örnek liste oluşturdum 1.sayfadaki sayıların yerlerine 2. sayfadaki harf yada isimlerin otomatik tanımlanmasını istiyorum..bana düşeyara ya nerden gireceğimi veya formulü nasıl-nereye yazacağımı söylerseniz memnun olurum
 

Ekli dosyalar

Merhaba,

Aşağıdaki kodları Sayfa1'in kod bölümüne kopyalayıp deneyiniz.

Yazdığınız numarayı bulamazsa yazdığınız rakam aynı kalacak, bulursa isim getirecek.

Kod:
Private Sub Worksheet_Change(ByVal Target As Range)
    
    If IsNumeric(Target) = False Then Exit Sub
    Dim c As Range
    Application.EnableEvents = False
    Set c = Sheets("Sayfa2").Range("A:A").Find(Target.Value, LookIn:=xlValues, LookAt:=xlWhole)
    If Not c Is Nothing Then Target = Sheets("Sayfa2").Cells(c.Row, "B")
    Application.EnableEvents = True
    
End Sub
 
Söylediklerinizi yaptım alt +f11 den..ama atamadı belki de doğru yapamadım yine de yardımlarınız için teşekkür ederim
 
Söylediklerinizi yaptım alt +f11 den..ama atamadı belki de doğru yapamadım yine de yardımlarınız için teşekkür ederim


Belki değil resmen siz yanlış yaptınız.

Sayfa1 in (aşağıdaki sayfaların belirtildiği yer) üzerinde sağ klik yapın ve kod görüntülemeyi seçin
çıkan pencereye kodları yapıştırın.

Yine yapamazsanız kodlar nereye nasıl yazılır forumdan araştırabilirsiniz.
 
Aynen dediğinizi sayfa 1 e yaptım sonra kapatıp tekrar açıp makroları etkinleştirdim fakat yine de olmadı siz verdiğim örneğe uygularsanız memnun olurum
 
yardımınız için teşekkür ederim sağolun
 
İşlem tamam diyorsunuz yani :) güle güle kullanınız.

Birşeyi merak ettim, o kadar kişinin numarasını nasıl anımsıyorsunuz, hayret ettim doğrusu.
 
Evet işler tamam sayenizde..Vallahi yardımınız işimi çok kolaylaştırdı ikinci olarakta yaklaşık 100 kişi numaralandırılmış isim listem var oradan bakıyorum yoksa telefon numaramı bile 1 yılda zor ezberledim:)
 
Evet işler tamam sayenizde..Vallahi yardımınız işimi çok kolaylaştırdı ikinci olarakta yaklaşık 100 kişi numaralandırılmış isim listem var oradan bakıyorum yoksa telefon numaramı bile 1 yılda zor ezberledim:)

O zaman farkıl bir yöntem uygulamalı. Hem listeye bakın hem numarasını girin ohooo çok zor.

Fırsatım olursa size bir kıyak çekeyim :)
 
O zaman farkıl bir yöntem uygulamalı. Hem listeye bakın hem numarasını girin ohooo çok zor.

Fırsatım olursa size bir kıyak çekeyim :)

Her ne kadar yanıt gelmediyse de alternatif bir çözüm sunayım.

Aşağıdaki kod BuÇalışmaKitabı (ThisWorkBook) nın kod bölümünde olmalı.

Kod:
Private Sub Workbook_Open()
 
    Doldur
 
End Sub

Aşağıdaki kodlar bir modülde olmalı

Kod:
Sub Doldur()
 
    Dim i   As Integer
 
    i = Sheets("Sayfa2").Cells(Rows.Count, "A").End(3).Row
    Sheets("Sayfa1").ComboBox1.ListFillRange = "Sayfa2!B2:B" & i
 
End Sub

Aşağıdaki kodlar ise Sayfa1 in kod sayfasında olmalı.

Kod:
Private Sub ComboBox1_Change()
    If ComboBox1.Value <> "" Then ActiveCell = ComboBox1.Value
    ActiveSheet.Shapes("Combobox1").Visible = False
    ComboBox1.Value = ""
End Sub


Kod:
Private Sub Worksheet_Activate()
Doldur
End Sub

Kod:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
On Error GoTo Son
 
If Intersect(Target, [A:L]) Is Nothing Then
ActiveSheet.Shapes("Combobox1").Visible = False
Exit Sub
End If
 
ActiveSheet.Shapes("Combobox1").Visible = True
ActiveSheet.Shapes("Combobox1").Top = Target.Offset(0, 2).Top
ActiveSheet.Shapes("Combobox1").Left = Target.Offset(0, 2).Left
 
Son:
End Sub
 

Ekli dosyalar

Geri
Üst