Excel Forum
ALTIN ÜYELİK Hakkında Bilgi


Geri Git   Excel Forum > EXCEL-Soruları > Makro-VBA
Atatürk
Şifremi Unuttum

DUYURU SİSTEMİ / REKLAM PANOSU

Makro-VBA Makro veya VBA ile ilgili sorularınızı buraya gönderebilirsiniz.
Dosya ekleyebilirsiniz

Özel Arama


Yanıtla
 
Paylaş Konu Araçları Görünüm Modları
Eski 16-04-2018, 13:25   #1
aliakgul
Altın Üye
 
aliakgul kullanıcısının avatarı
 
Giriş: 08/05/2005
Şehir: Antalya
Mesaj: 392
Excel Vers. ve Dili:
Excel 2003-Türkçe
Varsayılan Sütunda olan değerleri Comboboxta göstermesin.

Merhaba,
Combobox1'de normalde 1-25 arası değerler gösteriliyor.
H sütununda 1-25 arası değerlerin bazıları tekrarlı olarak yer alıyor.
1'den 25 kadar olan diziyi combobox1'de gösterirken H sütununda olmayanlarını göstersin istiyorum.
Örneğin, H sütununda 1,1,1,14,14,14,14,14,21,21,21,21,21,21,21 değerleri var. Comboboxta 2,3,4,5,6,7,8,9,10,11,12,13,15,16,17,18,19,20,22,2 3,24,25 gösterilmeli.
Emeklerinizden dolayı şimdiden teşekkür ederim.
aliakgul Çevrimdışı   Alıntı Yaparak Cevapla
Eski 16-04-2018, 14:51   #2
Orion1
Uzman
 
Orion1 kullanıcısının avatarı
 
Giriş: 01/03/2005
Mesaj: 19,995
Excel Vers. ve Dili:
Win7 Home Basic TR 64 Bit Ofis-2010-TR 32 Bit
Varsayılan

Örnek dosya yüklerseniz,daha çabuk yanıt alabilirsiniz.
Orion1 Çevrimiçi   Alıntı Yaparak Cevapla
Eski 18-04-2018, 10:19   #3
aliakgul
Altın Üye
 
aliakgul kullanıcısının avatarı
 
Giriş: 08/05/2005
Şehir: Antalya
Mesaj: 392
Excel Vers. ve Dili:
Excel 2003-Türkçe
Wink Örnek dosya eklendi

Userform açılırken ya da düğmeye tıklayınca (ikisinde de olabilir duruma göre ben uyarlarım) combobox'a değer olarak 1den 25e kadar olan dizi tanımlansın ancak (f:f) aralığına baksın ve bu aralıkta olanları combobox'a almasın.
Örnek dosyada comboboxun değer dizisi
1,2,3,4, 7,8,9,10,11,12, 14,15,16,17,18,19,20,21,22,23,24,25
şeklinde olmalı yani 5,6 ve 13 ü atlamalı...
Eklenmiş Dosyalar
Dosya Türü: xls combo-benzer.xls (45.0 KB, 8 Görüntülenme)
aliakgul Çevrimdışı   Alıntı Yaparak Cevapla
Eski 18-04-2018, 14:03   #4
Ziynettin
Altın Üye
 
Giriş: 17/04/2008
Şehir: istanbul
Mesaj: 455
Excel Vers. ve Dili:
office2010
Varsayılan

Merhaba,

Aşağıdaki kodu deneyiniz.

Kod: (Rahat kopyalayabilmeniz için tüm kodu seçmenizi sağlar)
Private Sub CommandButton1_Click()
Set d = CreateObject("scripting.dictionary")
a = Range("F2:F" & Cells(Rows.Count, "f").End(3).Row)
For i = 1 To UBound(a)
    d(a(i, 1)) = a(i, 1)
Next i
ReDim b(1 To 1, 1 To 25)
For i = 1 To 25
    If Not d(i) >= 1 Then
        say = say + 1
        ReDim Preserve b(1 To 1, 1 To say)
        b(1, say) = i
    End If
Next i
If say > 0 Then
    ComboBox1.Clear
    ComboBox1.Column = b
    ComboBox1.ListIndex = 0
End If
End Sub
Ziynettin Çevrimdışı   Alıntı Yaparak Cevapla
Eski 20-04-2018, 12:18   #5
aliakgul
Altın Üye
 
aliakgul kullanıcısının avatarı
 
Giriş: 08/05/2005
Şehir: Antalya
Mesaj: 392
Excel Vers. ve Dili:
Excel 2003-Türkçe
Unhappy Benim çalışmada hata veriyor

Sayın Ziynettin
Anca deneme fırsatı bulabildim.
Yeni bir formda gayet güzel çalışıyor ama benim çalışmada kullandığımda hata veriyor. Çalışmayı ekledim...
İlgi ve emeğinize tekrar teşekkür ederim.
Eklenmiş Dosyalar
Dosya Türü: xls KİTAPLIK-1.xls (1.33 MB, 6 Görüntülenme)

Bu mesaj en son " 20-04-2018 " tarihinde saat 15:23 itibariyle aliakgul tarafından düzenlenmiştir....
aliakgul Çevrimdışı   Alıntı Yaparak Cevapla
Eski 20-04-2018, 18:45   #6
Ziynettin
Altın Üye
 
Giriş: 17/04/2008
Şehir: istanbul
Mesaj: 455
Excel Vers. ve Dili:
office2010
Varsayılan

Kodu bu şekilde deneyin.

Kod: (Rahat kopyalayabilmeniz için tüm kodu seçmenizi sağlar)
Private Sub CommandButton8_Click()
    syf = Format(no.Value, Text)
    Sheets(syf).Select
    a = Range("F2:F" & Cells(Rows.Count, "f").End(3).Row)
        Set dic1 = CreateObject("scripting.dictionary")
        For i = 1 To UBound(a)
            If a(i, 1) <> "" And Not dic1.exists(a(i, 1)) Then
                dic1(a(i, 1)) = ""
            End If
        Next i
        Set dic2 = CreateObject("scripting.dictionary")
        For i = 1 To 25
            If Not dic1.exists(i) Then
                If Not dic2.exists(i) Then
                    dic2(i) = ""
                End If
            End If
        Next i
    txttur.List = dic2.keys
    txttur.ListIndex = 0
End Sub

Kod: (Rahat kopyalayabilmeniz için tüm kodu seçmenizi sağlar)
Private Sub UserForm_Initialize()
 Sayfa3.Select
 a = WorksheetFunction.CountA(Range("a1:a65000"))
'       txttur.RowSource = "a2:a" & a
Formun initialize olayındaki kırmızı yazılı satırları silin ya da pasif ediniz.
Ziynettin Çevrimdışı   Alıntı Yaparak Cevapla
Eski 20-04-2018, 21:19   #7
aliakgul
Altın Üye
 
aliakgul kullanıcısının avatarı
 
Giriş: 08/05/2005
Şehir: Antalya
Mesaj: 392
Excel Vers. ve Dili:
Excel 2003-Türkçe
Varsayılan

Küçük bazı düzenleme ile sonuç gayet güzel... Tam sonucu okuldaki belgede uygulayınca bildiririm. Tekrar çok teşekkür ederim,elinize emeğinize sağlık.
aliakgul Çevrimdışı   Alıntı Yaparak Cevapla
Eski Dün, 21:56   #8
aliakgul
Altın Üye
 
aliakgul kullanıcısının avatarı
 
Giriş: 08/05/2005
Şehir: Antalya
Mesaj: 392
Excel Vers. ve Dili:
Excel 2003-Türkçe
Unhappy Bu macro daha hızlı çalışır mı?

İyi akşamlar arkadaşlar,
Sayın Ziynettin son denemelerimde de macro sorunsuz çalışıyor.Teşekkür ederim.
Aşağıda belirttiğim hususta fikirlerinize ihtiyacım var.
MACRO düğmesine DOSYA adlı bir macro uyarladım. İşlevi, seçilen öğrencinin almış olduğu dosyaları f:f aralığından kontrol edip ALMADIĞI dosyaları dizi halinde göstermek.
1'den 25'e kadar olan etiketlerden alınmamış dosyaların visible durumlarını true olarak tanımlamak.
Sıkıntı şu ki, bu kodlar biraz kasıyor. Aynı işlevi daha hızlı ve kasmadan yapacak bir uyarlama nasıl olur?
Eklenmiş Resimler
Dosya Türü: jpg macro.jpg (151.8 KB, 3 Görüntülenme)
Eklenmiş Dosyalar
Dosya Türü: xls KİTAPLIK-1.xls (1.36 MB, 2 Görüntülenme)
aliakgul Çevrimdışı   Alıntı Yaparak Cevapla
Yanıtla


Konu Araçları
Görünüm Modları

Gönderme Kuralları
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is Açık
SimgelerAçık
[IMG] kodu Açık
HTML kodu Kapalı


Saat 21:16


Bu forum Elit NET - www.elitnet.com.tr tarafından sunulmaktadır.

Excel Eğitimi - Mobil Uygulama - Çorlu - Çorlu Web Tasarım -- Beylikdüzü mali müşavir - Beylikdüzü mali müşavir - Lingerie - Dyeing Machine - Karton Bardak- Karton Bardak- Çorlu Dil Konuşma Terapisti- Çorlu Dil Konuşma Terapisti- Çorlu Konuşma Terapisti- Çorlu Konuşma Terapisti- Çorlu Özel Eğitim- Site Yönetimi- Pronet Tekirdağ- Çorlu Kamera- Pronet Edirne- Pronet Çorlu- Çorlu Araç Takip- Rampa- Çorlu İnternet Sitesi- Çorlu Sürücü Kursu- Şişli Avukat- Çorlu Etüt- İstanbul Botanik- Çorlu Sigorta- Kağıt Bardak- Kağıt Bardak- Çorlu Havuz- Çorlu Havuz- Çorlu Perde Yıkama- Okul Danışmanlık- ADR'li taşıma kabı imalatı- Mekanik Tesisat- Çorlu Grafik Tasarım- Çorlu Sondaj- Çorlu Etüt- Futbol Cafe- Beylikdüzü Temizlik- Çorlu Kurs- Çorlu Ders- İzmit Mimar- Hurda Bakır Kablo- Hurda Bakır Kablo- Çorlu Pronet- Çorlu Yönetim- Çorlu Apartman Yönetimi- Çorlu Marangoz- Çorlu Avukat-
Powered by vBulletin Version 3.7.2
Copyright ©2000 - 2018, Jelsoft Enterprises Ltd.
Advertisement System V2.6 By   Branden