DOSYA İndirmek/Yüklemek için ÜCRETLİ ALTIN ÜYELİK Gereklidir!
Altın Üyelik Hakkında Bilgi
merhaba,Verilerinizin A sutnunda var olduğunu sayarsak ;
DOLAYLI(ADRES(SÜTUN(B$1)-1+SATIR($A11)*50-49;1))
Formülü B1 hücresinden AY1 hücresine kadar sağa çekiniz
Sonrasında B1-AY1 hücrelerini seçip istediğiniz kadar alta çekip kopyalıyınız
bu formül yatay yapıyorbu formülü b1 hücresine yazınız sonrasında b1-AY1 arasında sağa doğru ve aşağıya doğru çekerek kullanın
DOLAYLI(ADRES(DOLAYLI("A"&SATIR(A1)+(BAĞ_DEĞ_DOLU_SAY($A1:A1)-1)*50);1))
veri sayı olmazsa DEGER hatası veriyor. bu DEGER hatası engellenebilir mi metin de olsa sıralasaMerhaba,
Muhasebeci arkadaşımın fikrinden hareketle ve yine verilerinizin A sütununda olduğunu varsayarak;
B1=DOLAYLI(ADRES(DOLAYLI("A"&SATIR(A1)+(BAĞ_DEĞ_DOLU_SAY($A1:A1)-1)*50);1))
Function KopyalaAralıklar(ByVal kaynakAralık As Range) As String()
Dim hedefSütun As Long
Dim i As Long
Dim satırSayısı As Long
For i = 1 To kaynakAralık.Rows.Count Step 50
hedefSütun = i \ 50 + 2
satırSayısı = IIf(i > 50, 50, kaynakAralık.Rows.Count - (i - 1))
Cells(1, hedefSütun).Resize(satırSayısı, 1).Value = _
kaynakAralık.Offset(i - 1, 0).Resize(satırSayısı, 1).Value
Next i
End Function
Sub Test()
Call KopyalaAralıklar(Range("A1:A600"))
End Sub
Bu kodu deneyiniz. Ayrıca 7 nolu mesajdaki formülleri denememişsiniz