DOSYA İndirmek/Yüklemek için ÜCRETLİ ALTIN ÜYELİK Gereklidir!
Altın Üyelik Hakkında Bilgi
=İNDİS($A$2:$C$11;BÖLÜM(SATIR(A1)-1;3)+1;MOD(SATIR(A1)-1;3)+1)
=İNDİS($A$2:$C$11;BÖLÜM(SÜTUN(A1)-1;3)+1;MOD(SÜTUN(A1)-1;3)+1)
Function myToColumn(Rng As Range, Hedef As Integer, Tip As Integer, Ara As Byte)
Dim i As Integer, j As Integer, Say As Long, a As Integer, b As Integer, Bak, Result()
Dim Dizi
Dizi = Rng.Value
If Ara = 0 Then
Dizi = Rng.Value 'Ara=0 ise önce satıra bak
Else
Dizi = Application.Transpose(Rng.Value) 'Ara=0 değilse önce sütuna bak
End If
'Hücre değerine göre uygun verileri listeye aktar
For i = 1 To UBound(Dizi, 1)
For j = 1 To UBound(Dizi, 2)
Bak = Dizi(i, j)
Select Case Tip
Case Is <= 0
Say = Say + 1: ReDim Preserve Result(1 To Say): Result(Say) = Bak
Case 1
If Not IsEmpty(Bak) Then Say = Say + 1: ReDim Preserve Result(1 To Say): Result(Say) = Bak
Case 2
If Not IsError(Bak) Then Say = Say + 1: ReDim Preserve Result(1 To Say): Result(Say) = Bak
Case Else
If Not (IsEmpty(Bak) Or IsError(Bak)) Then Say = Say + 1: ReDim Preserve Result(1 To Say): Result(Say) = Bak
End Select
Next j
Next i
If Hedef = 0 Then
myToColumn = Application.Transpose(Result) 'Sonucu Tek Sütunda görmek
Else
myToColumn = Result 'Sonucu Tek Satırda Görmek
End If
End Function
İkinci mesajınıza bakmadan yolluyorum.
Aşağıdaki UDF, SATIRA ve SÜTUNA (TOCOL -TOROW) fonksiyonlarını bir arada karşılar.
Hem makro hem de formül ile teşekkür ederim hocam Allah razı olsun iyi akşamlar selamlar.Bir sorum olacak yazmış olduğunuz formülde boşluklar olursa formül nasıl olur yardımcı olurmusunuz.C++:Function myToColumn(Rng As Range, Hedef As Integer, Tip As Integer, Ara As Byte) Dim i As Integer, j As Integer, Say As Long, a As Integer, b As Integer, Bak, Result() Dim Dizi Dizi = Rng.Value If Ara = 0 Then Dizi = Rng.Value 'Ara=0 ise önce satıra bak Else Dizi = Application.Transpose(Rng.Value) 'Ara=0 değilse önce sütuna bak End If 'Hücre değerine göre uygun verileri listeye aktar For i = 1 To UBound(Dizi, 1) For j = 1 To UBound(Dizi, 2) Bak = Dizi(i, j) Select Case Tip Case Is <= 0 Say = Say + 1: ReDim Preserve Result(1 To Say): Result(Say) = Bak Case 1 If Not IsEmpty(Bak) Then Say = Say + 1: ReDim Preserve Result(1 To Say): Result(Say) = Bak Case 2 If Not IsError(Bak) Then Say = Say + 1: ReDim Preserve Result(1 To Say): Result(Say) = Bak Case Else If Not (IsEmpty(Bak) Or IsError(Bak)) Then Say = Say + 1: ReDim Preserve Result(1 To Say): Result(Say) = Bak End Select Next j Next i If Hedef = 0 Then myToColumn = Application.Transpose(Result) 'Sonucu Tek Sütunda görmek Else myToColumn = Result 'Sonucu Tek Satırda Görmek End If End Function
Ben denyerek gönderdim sorun da göremiyorum halen.
=myToColumn(A2:C11;1;3;0)
4 değişken var.
1.si tek sütun ya da satır olarak oluşturacağınız sonucun alınacağı Kaynak Alan, Range
2.si Sonuc tek bir sütun olacaksa 0 yazılır, 0 yazılmasa satır olarak sonucu döndürür
3.sü Hangi verilerin alınacağıdır. 0:Tüm değerler / 1: boşluk olmayanlar / 2:Hata olmayanlar /3: Boş ya da hata olmayanlar
4.sü 0 olursa önce satırı tarar, değilse önce sütunu tarar.
Teşekkür ederim hocam emeğinize sağlık iyi akşamlarFormülleri ben vermedim.
Ben KTF yazdım sadece.
SATIRA ve SÜTUNA 365 versiyonundaki formüllerin birleşmiş halidir.