Sayın uzman arkadaşlar,
Ekte örneği yer alan ve daha uzun veriye sahip bir dosyam var. Bu dosyada BARKOD1 her değiştiğinde MÜŞTERİ KODLARI sütunundaki BARKOD1 ile ilgili değerlerin tek bir hücreye birleştirilip, virgül ile ayrılmış olarak yazılmasına ihtiyacım var. Aynı zamanda BARKOD1'in eğiştiği her ilk satırındaki veriler de Sayfa2'ye aktarılacak.
(ekteki dosyada Sayfa1 asıl veri, Sayfa2 ihtiyaç duyduğum sonuçtur).
Ben csvrange diye bir fonksyon kullanıyorum. Ancak bu fonksyonu kullanmam için önce süzmem sonra kopyala yapıştır gibi işlemler gerekiyor, liste uzun veri de çok olunca çok vakit kaybı...
Bu konuya makro ile bir çözüm bulabilir miyiz?
Kullandığım fonksyon:
Function csvRange(myRange As Range)
Dim csvRangeOutput
For Each entry In myRange
If Not IsEmpty(entry.Value) Then
csvRangeOutput = csvRangeOutput & entry.Value & ","
End If
Next
csvRange = Left(csvRangeOutput, Len(csvRangeOutput) - 1)
End Function
Ekte örneği yer alan ve daha uzun veriye sahip bir dosyam var. Bu dosyada BARKOD1 her değiştiğinde MÜŞTERİ KODLARI sütunundaki BARKOD1 ile ilgili değerlerin tek bir hücreye birleştirilip, virgül ile ayrılmış olarak yazılmasına ihtiyacım var. Aynı zamanda BARKOD1'in eğiştiği her ilk satırındaki veriler de Sayfa2'ye aktarılacak.
(ekteki dosyada Sayfa1 asıl veri, Sayfa2 ihtiyaç duyduğum sonuçtur).
Ben csvrange diye bir fonksyon kullanıyorum. Ancak bu fonksyonu kullanmam için önce süzmem sonra kopyala yapıştır gibi işlemler gerekiyor, liste uzun veri de çok olunca çok vakit kaybı...
Bu konuya makro ile bir çözüm bulabilir miyiz?
Kullandığım fonksyon:
Function csvRange(myRange As Range)
Dim csvRangeOutput
For Each entry In myRange
If Not IsEmpty(entry.Value) Then
csvRangeOutput = csvRangeOutput & entry.Value & ","
End If
Next
csvRange = Left(csvRangeOutput, Len(csvRangeOutput) - 1)
End Function
