• DİKKAT

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

Rakamları kendi satırında kendi sütun numarasına göre otomatik dağıtmak ?

Katılım
3 Nisan 2011
Mesajlar
10
Excel Vers. ve Dili
2007 tr
merhabalar arkadaşlar bilen arkadaşlardan rica ederek bir sorum olacak .
sütün genişliği 4 olarak biçimlendirilmiş bir excell sayfasında 1-95 arası 30 adet 450 satırlık rakamlar var
ÖRN:1)3-15-17-19-33-34-36-39-43-44-45-45-55-56-57-59-67-69-80-95
2)4-7-9--11-13-15-16-19-20-21-23-26-29-33-35-55-59-61-72-94
GİBİ bu rakamları kendi satırında kendi sütun numarasına göre
otomatik nasıl dağıtabiliriz ÖRNEK VERİLMİŞTİR
yardımcı olacak arkadaşlara teşekkür ederim.
 

Ekli dosyalar

Merhaba,
Ekteki örneği inceleyiniz. Makroları etkinleştirdikten sonra butona basmanız yeterli.
Kod:
Sub dagıt()
SonSut = Cells(1, 256).End(1).Column
For x = 1 To Cells(65536, 1).End(3).Row
For y = SonSut To 1 Step -1
Sut = Cells(x, y)
Cells(x, Sut) = Sut
Cells(x, y) = ""
Next
Next
MsgBox "İşlem tamamlanmıştır...", vbInformation, "l e u m r u k"
End Sub

NOT: Forumda yeni olduğunuz için bilmiyor olabilirsiniz. Lütfen aynı içerikte konu açmayınız. Benzer konularınızı geri dönüşüme göndereceğim, bilginiz olsun.
 

Ekli dosyalar

Merhaba,

Alternatif olsun.

Kod:
Sub Dagit()
    Dim SonKol  As Integer, _
        i       As Long, _
        j       As Integer, _
        dz()
    
    SonKol = Cells(1, Columns.Count).End(xlToLeft).Column
    
    ReDim dz(1 To SonKol)
    Application.ScreenUpdating = False
    
    'Satırları Oku
    For i = 1 To Cells(Rows.Count, "A").End(xlUp).Row
        'Diziye Alma
        For j = 1 To SonKol
            dz(j) = Cells(i, j)
        Next j
        Range(Cells(i, "A"), Cells(i, SonKol)).ClearContents
        'rakamları dağıtmaya başla
        For j = 1 To SonKol
            Cells(i, dz(j)) = dz(j)
        Next j
    Next i
    Application.ScreenUpdating = True
    MsgBox "İşlem Tamamdır..."
End Sub
 

Ekli dosyalar

Selamlar,

Necdet bey elinize sağlık. Yazdığınız kodda kullandığınız yöntem gerçekten çok hızlı sonuç üretiyor. Döngülerde dizi yönteminin kullanılması hız açısından nasılda fark ediyor. Alternatif kodlar için uzman arkadaşlarıma teşekkür ederim.

Üyelerimizin klasik döngüler ile dizi döngüler arasındaki farkı gözlemlemeleri açısından güzel örnekler oldu.

Tekrardan elinize sağlık.
 
Necdet bey elinize sağlık. Yazdığınız kodda kullandığınız yöntem gerçekten çok hızlı sonuç üretiyor. Döngülerde dizi yönteminin kullanılması hız açısından nasılda fark ediyor.

Teşekkürler Korhan bey.
 
sayın necdet hocam elinize sağlık tamda istediğim gibi olmuş lakin ben kodlardan anlamıyorum henüz sırasıyla işlemleri yazarsanız zahmetinize teşekkür ederim :)
 
Merhaba,

VBA kodlarının nereye yazılacağı hakkında forumda epeyce bilgi var. Ben yine kısaca anlatayım.

2007 kullandığınız yazılı bilginizde.

Geliştirici (Makro) sekmesi şeritte görünmüyorsa onu göstermek gerekir :
  • Ofis Düğmesi
  • Excel Seçenekleri
  • Popüler
  • Şeritte Geliştirici Sekmesini göster i işaretleyiniz.
  • Tamam
Geliştirici sekmesinde Visiual Basic ikonuna basın.
Karşınızda VBA ekranı gelecektir.
Insert
Module
dedikten sonra boş bir modul eklenecektir.
onun sağındaki beyaz boş alana yukarıdaki kodları kopyalayınız.

Sonra xl sayfasında bir buton ekleyin ve sağ tıklayın makroyu atayın.
 
Geri
Üst