Çalışma sayfasını değerleri aynı olan sütunlara göre düzenleme

Katılım
8 Mart 2016
Mesajlar
6
Excel Vers. ve Dili
Excel 2013 Pro Plus English
Foruma bugün kayıt oldum öncelikle merhaba. Üye olmadan önce forumdan çok kez yararlanmıştım ama bu sefer artık exceldeki durum örneklere bakarak çözülemeyecek bir hale geldi. Çok uzatmadan hemen sorunuma geçeyim.

Elimde bunun gibi 360.000 satırlık (yaklaşık 5-6 çalışma sayfası) veri var.

AD-SOYAD CİNS. YAŞ TARİH NO
NEVRİZE DEMİR KADIN 56 11.03.2011 28
NEVRİZE DEMİR KADIN 56 11.03.2011 27
NEVRİZE DEMİR KADIN 56 11.03.2011 25
NEVRİZE DEMİR KADIN 56 11.03.2011 24
NEVRİZE DEMİR KADIN 56 11.03.2011 22
NEVRİZE DEMİR KADIN 56 11.03.2011 21
AYNUR KARAATA KADIN 51 11.02.2010 25
AYNUR KARAATA KADIN 51 11.02.2010 22
AYNUR KARAATA KADIN 51 11.02.2010 16
AYNUR KARAATA KADIN 51 11.02.2010 15
AYNUR KARAATA KADIN 51 11.02.2010 14
NAZİYE KAMBEROĞLU KADIN 48 13.06.2008 28
NAZİYE KAMBEROĞLU KADIN 48 13.06.2008 27
NAZİYE KAMBEROĞLU KADIN 48 13.06.2008 26
NAZİYE KAMBEROĞLU KADIN 48 13.06.2008 18
NAZİYE KAMBEROĞLU KADIN 48 13.06.2008 17
NAZİYE KAMBEROĞLU KADIN 48 13.06.2008 16
NAZİYE KAMBEROĞLU KADIN 48 13.06.2008 15
ŞÜKRAN ÇORAKLI KADIN 46 30.10.2009 17
ŞÜKRAN ÇORAKLI KADIN 46 30.10.2009 16
ŞÜKRAN ÇORAKLI KADIN 46 30.10.2009 15
ŞÜKRAN ÇORAKLI KADIN 46 30.10.2009 14
ŞÜKRAN ÇORAKLI KADIN 46 30.10.2009 12
ŞÜKRAN ÇORAKLI KADIN 46 30.10.2009 11

Görüldüğü üzere aynı isime ait pek çok "NO" değişkeni var. Benim istediğim şey bu "NO" değişkenini yanyana yazmak özetle yukarıdaki tabloyu aşağıda yazacağım hale tek tek uğraşmadan getirebilmek. Bunu nasıl yapabilirim? Şimdiden teşekkür ederim, kolay gelsin...

AD-SOYAD CİNS. YAŞ TARİH NO
NEVRİZE DEMİR KADIN 56 11.03.2011 28,27,25,24,22,21
AYNUR KARAATA KADIN 51 11.02.2010 25,22,16,15,14
NAZİYE KAMBEROĞLU KADIN 48 13.06.2008 28,27,26,18,17,16
ŞÜKRAN ÇORAKLI KADIN 46 30.10.2009 17,16,15,14,12,11
 
Katılım
1 Kasım 2015
Mesajlar
257
Excel Vers. ve Dili
Excel 2013 TR 64 bit
Altın Üyelik Bitiş Tarihi
23.02.2021
Bunu formülle yapmak kolay aksam halledebilirm ancak satir sayiniz çok yuksek excel dosyanızın muhtemelen kasacaktir. Makrolu bir çözüm yapmak gerekir. Ve makrodan yana zayifim maalesef. Simdilik formül isimi görür dersen bir ornek gonderirim
 
Katılım
8 Mart 2016
Mesajlar
6
Excel Vers. ve Dili
Excel 2013 Pro Plus English
Açıkçası şu an ne olursa kabulümdür. Deneyelim bakalım kasmaz umarım. Haber bekliyorum sizden kolay gelsin
 

veyselemre

Özel Üye
Katılım
9 Mart 2005
Mesajlar
3,643
Excel Vers. ve Dili
Pro Plus 2021
Kod:
Sub indexle()
    Application.ScreenUpdating = False
    mde = Application.Calculation
    Application.Calculation = xlCalculationManual
    
    Set s1 = Sheets("Sayfa1")
    Set s2 = Sheets("Sayfa2")
    s1.Select

    son = Cells(Rows.Count, 1).End(3).Row
    lst = Range("A1:E" & son).Value

    With CreateObject("Scripting.Dictionary")
        For i = 1 To son
            key = lst(i, 1) & "|" & lst(i, 2) & "|" & lst(i, 3) & "|" & lst(i, 4) & "|"
            .Item(key) = .Item(key) & "," & lst(i, 5)
        Next i
        kys = .keys
        itms = .items
    End With

    s2.Select
    Cells.ClearContents
    For i = 0 To UBound(kys)
        bol = Split(kys(i), "|")
        Cells(i + 1, 1).Resize(, 4).Value = bol
        Cells(i + 1, 5).Value = Mid(itms(i), 2)
    Next i
    Application.Calculation = mde
    Application.ScreenUpdating = True
End Sub
 
Katılım
8 Mart 2016
Mesajlar
6
Excel Vers. ve Dili
Excel 2013 Pro Plus English
Selamlar. Uğraştım kurcaladım biraz ama her seferinde run-time error 9 hatası veriyor. Subscript out of range hatası da alıyorum. Neden olabilir acaba?
 

asi_kral

Özel Üye
Katılım
22 Şubat 2012
Mesajlar
2,822
Excel Vers. ve Dili
Excel 2007 Türkçe
Selamlar. Uğraştım kurcaladım biraz ama her seferinde run-time error 9 hatası veriyor. Subscript out of range hatası da alıyorum. Neden olabilir acaba?
Merhaba
Bu kodu dener misiniz ?
Kod:
Option Explicit
Sub Birleş()
Dim STR As Long, SBT As Long
Application.EnableEvents = False
With WorksheetFunction
For STR = 2 To Cells(Rows.Count, "A").End(xlUp).Row
If .CountIf(Range("A2:A" & STR), Range("A" & STR)) = 1 Then
SBT = STR
Else
Cells(SBT, "E") = Cells(SBT, "E") & "," & Cells(STR, "E")
Range("A" & STR & ":E" & STR).ClearContents
End If
Next
For STR = STR To 2 Step -1
If Cells(STR, "A") = Empty Then
Range("A" & STR & ":E" & STR).Delete
End If
Next
End With
Application.EnableEvents = True
End Sub
2007 Makro Güvenlik ayarı

2003 makro Güvenlik ayarı
Makro güvenlik ayarlarınızı güncelleyin.
 
Katılım
8 Mart 2016
Mesajlar
6
Excel Vers. ve Dili
Excel 2013 Pro Plus English
evet bu sefer oldu, çok teşekkürler. sütun ismi değiştirmek gibi basit 1-2 düzeltme ile halloldu hepsi.
 
Katılım
8 Mart 2016
Mesajlar
6
Excel Vers. ve Dili
Excel 2013 Pro Plus English
Tekrar merhabalar. Bu proje ile ilgili işim bitmiyor malesef:( yeni konu açmak yerine buradan devam etmek istedim konu kalabalığı olmaması adına.
Yukarıda ilk bölümünü hallettiğim excel dosyasında söyle devam etmek istiyorum.

H2 den başlayıp H2246 ya kadar uzayan 11-28 arası sayısal değerlerim var. Ör:
H2: 28,27,25,24,22,21,18,17,15,14,12,11
H3: 25,22,16,15,14
H4: 28,27,26,18,17,16,15 gibi....
Dikkat ederseniz tek bir hücrede virgülle ayrılmış, yer yer sıralı olmayan veya eksileri olan pek çok sayı mevcut. Ama bu sayılar 11-28 arasında hep.
Yapmak istediğim şey 1.si bu hücre içi değerleri sıraya sokmak. Ama bu sıralama 28,27,26,25,24,23,22,21,11,12,13,14,15,16,17,18 şeklinde olmalı. Arada eksikler olsa bile önce 28den 21e inmeli sonra (20 ve 19 yok) 11den tekrar 18e çıkmalı. Ama bunu da J2-J2246 arasında (J sütununda yani) yapmalı ki ben H sütununa bakarak kontrol edebilmeliyim.

2.si de K-Z arası sütunların 1.satırına (K1-Z1 arasına) her hücreye bir rakam gelecek şekilde sırasıyla 28,27,26,25,24,23,22,21,11,12,13,14,15,16,17,18 yazdım. Ve istediğim şey H sütunundaki (H2-H2246) (biraz önce bahsettiğim tek bir hücrede virgülle ayrılmış, yer yer sıralı olmayan veya eksileri olan pek çok sayı ) sayıların K-Z arasındaki kendi yerlerine yazılması.

Yani H3de yazan 25,22,16,15,14 sayıları için N3de 25, Q3de 22, V3de 14, W3de 15, X3de 16 yazmalı. K3-Z3 arasındaki diğer değer yazmayan hücreler boş kalmalı. Ama H3deki sayılar gitmemeli yine kontrol etmek için.
Bu şekilde H2den H2246 ya kadar olmalı.

Umarım açıklayıcı yazmışımdır. Anlatabilmişimdir derdimi. Umarım yardımcı olabilecek birileri çıkar. Şimdiden uğraşlarınız için teşekkür ederim.
 
Katılım
8 Mart 2016
Mesajlar
6
Excel Vers. ve Dili
Excel 2013 Pro Plus English
Merhabalar, yardım edebilecek kimse yok mu acaba?
 
Üst