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 23-07-2017, 23:18   #1
Muharrem41
 
Giriş: 15/09/2016
Şehir: kocaeli
Mesaj: 33
Excel Vers. ve Dili:
türkçe 2007
Varsayılan Kombinasyon makrosunda düzeltme

Kod: (Rahat kopyalayabilmeniz için tüm kodu seçmenizi sağlar)
Sub Listele()
Dim X As Byte, z As Long
Dim a As Byte, b As Byte, c As Byte, d As Byte, e As Byte, f As Byte, g As Byte

X = 49

For a = 1 To X
For b = a + 1 To X
For c = b + 1 To X
For d = c + 1 To X
For e = d + 1 To X
For f = e + 1 To X
z = z + 1
Cells(z, 1) = a
Cells(z, 2) = b
Cells(z, 3) = c
Cells(z, 4) = d
Cells(z, 5) = e
Cells(z, 6) = f
Next f
Next e
Next d
Next c
Next b
Next a

End Sub
Merhaba arkadaşlar elimde şöyle bir macro var macro çalışıyor fakat sayıları tam olarak üretmiyor benim istedigim excel satırı 1048576 da hata veriyor satır bittikten sonra kalan sayıları ghıijk sutunlarına yazdıra bilirmiyim lütfen yardım
Muharrem41 Çevrimdışı   Alıntı Yaparak Cevapla
Eski 23-07-2017, 23:23   #2
BedriA
Altın Üye
 
BedriA kullanıcısının avatarı
 
Giriş: 03/06/2017
Şehir: Antalya
Mesaj: 736
Excel Vers. ve Dili:
2007, 32
Varsayılan

Yazdırdığınız sayfanın adı nedir?
Ayrıca bu koddaki döngü ne zaman bitiyor?

Sonsuza mı gitmeye çalışıyor bu kod?
__________________
Demiri demirle dövdüler, biri sıcak biri soğuktu.
İnsanı insana kırdırdılar, biri aç biri toktu.

Pir Sultan Abdal

Bu mesaj en son " 23-07-2017 " tarihinde saat 23:32 itibariyle BedriA tarafından düzenlenmiştir....
BedriA Çevrimdışı   Alıntı Yaparak Cevapla
Eski 24-07-2017, 00:12   #3
BedriA
Altın Üye
 
BedriA kullanıcısının avatarı
 
Giriş: 03/06/2017
Şehir: Antalya
Mesaj: 736
Excel Vers. ve Dili:
2007, 32
Varsayılan

C(49,6)=?
Üretmesi gereken kombinasyon sayısı.
__________________
Demiri demirle dövdüler, biri sıcak biri soğuktu.
İnsanı insana kırdırdılar, biri aç biri toktu.

Pir Sultan Abdal
BedriA Çevrimdışı   Alıntı Yaparak Cevapla
Eski 24-07-2017, 00:21   #4
Korhan Ayhan
Moderatör
 
Korhan Ayhan kullanıcısının avatarı
 
Giriş: 15/03/2005
Şehir: ANTALYA
Mesaj: 22,580
Excel Vers. ve Dili:
OFFICE 2013-2016 PRO TR
Varsayılan

Aşağıdaki gibi kullanabilirsiniz.

Kod: (Rahat kopyalayabilmeniz için tüm kodu seçmenizi sağlar)
Sub Listele()
    Dim x As Byte, y As Long, z As Long
    Dim a As Byte, b As Byte, c As Byte, d As Byte, e As Byte, f As Byte, g As Byte
    
    Cells.Clear
    x = 49
    z = 1
    
    For a = 1 To x
        For b = a + 1 To x
            For c = b + 1 To x
                For d = c + 1 To x
                    For e = d + 1 To x
                        For f = e + 1 To x
                            y = y + 1
                            If y > 1048576 Then
                                y = 1
                                z = z + 7
                            End If
                            Cells(y, z) = a
                            Cells(y, z + 1) = b
                            Cells(y, z + 2) = c
                            Cells(y, z + 3) = d
                            Cells(y, z + 4) = e
                            Cells(y, z + 5) = f
                        Next f
                    Next e
                Next d
            Next c
        Next b
    Next a

    MsgBox "İşleminiz tamamlanmıştır.", vbInformation
End Sub
__________________
.
.
.

Soru sormadan önce forumumuzun aşağıdaki
bölümlerini incelediğinizde birçok sorunuza yanıt bulabilirsiniz.


Excel Dersanesi
Uygulamalı Excel Eğitimi
Excel İçin Örnek Uygulamalar
Video Dersane (***Altın Üyelere Özel***)

Lütfen sorularınızın çözümlendiğine dair geri dönüş mesajı yazınız...!
Lütfen yazım ve forum kurallarına uyalım...!
Lütfen sorularımızı açık ve net bir dille ifade edelim...!



FORUM KURALLARI
Korhan Ayhan Çevrimdışı   Alıntı Yaparak Cevapla
Eski 24-07-2017, 00:46   #5
BedriA
Altın Üye
 
BedriA kullanıcısının avatarı
 
Giriş: 03/06/2017
Şehir: Antalya
Mesaj: 736
Excel Vers. ve Dili:
2007, 32
Varsayılan

Alıntı:
Korhan Ayhan tarafından gönderildi Mesajı Görüntüle
Aşağıdaki gibi kullanabilirsiniz.

Kod: (Rahat kopyalayabilmeniz için tüm kodu seçmenizi sağlar)
Sub Listele()
    Dim x As Byte, y As Long, z As Long
    Dim a As Byte, b As Byte, c As Byte, d As Byte, e As Byte, f As Byte, g As Byte
    
    Cells.Clear
    x = 49
    z = 1
    
    For a = 1 To x
        For b = a + 1 To x
            For c = b + 1 To x
                For d = c + 1 To x
                    For e = d + 1 To x
                        For f = e + 1 To x
                            y = y + 1
                            If y > 1048576 Then
                                y = 1
                                z = z + 7
                            End If
                            Cells(y, z) = a
                            Cells(y, z + 1) = b
                            Cells(y, z + 2) = c
                            Cells(y, z + 3) = d
                            Cells(y, z + 4) = e
                            Cells(y, z + 5) = f
                        Next f
                    Next e
                Next d
            Next c
        Next b
    Next a

    MsgBox "İşleminiz tamamlanmıştır.", vbInformation
End Sub
Korhan Hocam,

Döngünün tamamlanması ne kadar sürdü?
Ben de sürekli excel sayfası dondu, işlemin sonunu göremedim yani.
__________________
Demiri demirle dövdüler, biri sıcak biri soğuktu.
İnsanı insana kırdırdılar, biri aç biri toktu.

Pir Sultan Abdal
BedriA Çevrimdışı   Alıntı Yaparak Cevapla
Eski 24-07-2017, 01:15   #6
BedriA
Altın Üye
 
BedriA kullanıcısının avatarı
 
Giriş: 03/06/2017
Şehir: Antalya
Mesaj: 736
Excel Vers. ve Dili:
2007, 32
Varsayılan

14 sütun oluşuyor.
Sayısal Loto'yu tutturma ihtimali 1/13 983 816.
__________________
Demiri demirle dövdüler, biri sıcak biri soğuktu.
İnsanı insana kırdırdılar, biri aç biri toktu.

Pir Sultan Abdal
BedriA Çevrimdışı   Alıntı Yaparak Cevapla
Eski 24-07-2017, 21:02   #7
Muharrem41
 
Giriş: 15/09/2016
Şehir: kocaeli
Mesaj: 33
Excel Vers. ve Dili:
türkçe 2007
Varsayılan

sayfa yanıt vermiyor hocam
Muharrem41 Çevrimdışı   Alıntı Yaparak Cevapla
Eski 24-07-2017, 21:11   #8
Muharrem41
 
Giriş: 15/09/2016
Şehir: kocaeli
Mesaj: 33
Excel Vers. ve Dili:
türkçe 2007
Varsayılan

hatamı var
Muharrem41 Çevrimdışı   Alıntı Yaparak Cevapla
Eski 24-07-2017, 23:33   #9
PLİNT
 
Giriş: 30/12/2014
Şehir: Gürün
Mesaj: 1,201
Excel Vers. ve Dili:
Excel 2010
Varsayılan

Alıntı:
Muharrem41 tarafından gönderildi Mesajı Görüntüle
hatamı var
Merhaba
Aşağıdaki gibi deneyiniz, hem hızlı olması açısından faydası olacaktır.
Kod: (Rahat kopyalayabilmeniz için tüm kodu seçmenizi sağlar)
Sub Listele()
Dim kom()
Dim a, b, c, d, e, f, i, x, n, j As Integer
Cells.Clear
ReDim kom(1 To 6, 1 To 65536)
i = 0: n = 1: j = 1: x = 0
For a = 1 To 44
For b = a + 1 To 45
For c = b + 1 To 46
For d = c + 1 To 47
For e = d + 1 To 48
For f = e + 1 To 49
i = i + 1
kom(1, i) = a
kom(2, i) = b
kom(3, i) = c
kom(4, i) = d
kom(5, i) = e
kom(6, i) = f
If i = 65536 Then
x = x + 1
Cells(n, j).Resize(i, 6) = Application.Transpose(kom)
If x = Rows.Count / 65536 Then
x = 0: n = 1: i = 0
j = j + 6
End If
Cells(n + i, j).Select
n = n + i
 Erase kom: i = 0
ReDim kom(1 To 6, 1 To 65536)
 End If
Next: Next: Next: Next: Next: Next
If i > 0 Then Cells(n, j).Resize(i, 6) = Application.Transpose(kom)
End Sub
 

Bu mesaj en son " 25-07-2017 " tarihinde saat 00:20 itibariyle PLİNT tarafından düzenlenmiştir.... Neden: Mavi kısım eklendi
PLİNT Çevrimiçi   Alıntı Yaparak Cevapla
Eski 25-07-2017, 00:24   #10
Korhan Ayhan
Moderatör
 
Korhan Ayhan kullanıcısının avatarı
 
Giriş: 15/03/2005
Şehir: ANTALYA
Mesaj: 22,580
Excel Vers. ve Dili:
OFFICE 2013-2016 PRO TR
Varsayılan

Hata yok. Makronun bitmesini beklemeniz gerekiyor. İç içe döngü olduğu için uzun sürecektir.

Alternatif olarak verilen kodu deneyiniz. Daha hızlı sonuç üretecektir.
__________________
.
.
.

Soru sormadan önce forumumuzun aşağıdaki
bölümlerini incelediğinizde birçok sorunuza yanıt bulabilirsiniz.


Excel Dersanesi
Uygulamalı Excel Eğitimi
Excel İçin Örnek Uygulamalar
Video Dersane (***Altın Üyelere Özel***)

Lütfen sorularınızın çözümlendiğine dair geri dönüş mesajı yazınız...!
Lütfen yazım ve forum kurallarına uyalım...!
Lütfen sorularımızı açık ve net bir dille ifade edelim...!



FORUM KURALLARI
Korhan Ayhan Ç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 22:29


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

Excel Eğitimi - Mobil Uygulama - Çorlu - Torna - Çorlu Web Tasarım - Tarot Falı - invest in turkey - Lingerie - Dyeing Machine - Çorlu Temizlik- Karton Bardak- Çorlu Özel Eğitim- Site Yönetimi- Led Aydınlatma- Pronet Tekirdağ- Çorlu Kamera- Pronet Edirne- Pronet Kırklareli- Pronet Çerkezköy- Pronet Çorlu- Pronet Lüleburgaz- Pronet Keşan- Çorlu Araç Takip- Çorlu Su Arıtma- Boru Profil- Gebze Emlak- Beylikdüzü Temizlik- İstanbul Burun Estetiği- Su Deposu Temizliği- Bakır Sülfat- Rampa- Rotary- Çorlu İnternet Sitesi-
Powered by vBulletin Version 3.7.2
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.
Advertisement System V2.6 By   Branden