Son Dolu Satırı Bulup Değişken Alanı Kopyalama

Durum
Üzgünüz bu konu cevaplar için kapatılmıştır...
Katılım
20 Şub 2021
Mesajlar
210
Excel Versiyonu
Excel 2016
Excel Sürümü
64 Bit
Excel Dili
Türkçe

Ekli dosyalar

Çözüm
Mesela şöyle olabilir.
Kodda, verilerin yapıştırılacağı alanın AA7'den itibaren sağa ve aşağı olacağı varsayıldı.

VBA:
Sub KOPYALA()
If WorksheetFunction.Sum([B:B]) > 0 Then
    Range("M7:R" & WorksheetFunction.Sum([B:B]) + 6).Copy
    [AA7].PasteSpecial Paste:=xlPasteValuesAndNumberFormats
    Application.CutCopyMode = False
End If
End Sub
Bu tür örnek belgeler bulmaca çözer gibi oluyor.
Formüle bakıyorum DÜŞEYARA işlevinde ARANAN değer 1&SATIR(...) şeklinde ve diyelim ki aranan 11 ,
(aranan değerin neden bu şekilde bulunduğu konusu ayrı tabi)
-- A sütununa bakıyorum veri görünmüyor,
-- A sütununun yazı rengi beyaz mı acaba diye renk değiştiriyorum yina A sütunu boş,
-- A sütununda koşullu biçimlendirme ile mi yazı rengi beyaz ayarlanmış deyip koşullu biçimlendirme temizliyorum hala A sütunu boş,
-- Son olarak A sütununun normal hücre biçimlendirmesine bir bakıyorum ki ;;; biçimlendirmesiyle veriler gizlenmiş.

Buraya kadarki kısım belgeyi anlamaya başlamak için idi.
Diğer sütunlara bakınca .başka sütunlarda da benzer DEĞER GİZLEME işlemi var olduğu görülüyor.
Bu kadar bulmaca çözme işi yeterli diye düşünüyor insan.

Gerçekten değişik bir soru sorma yöntemi olmuş.
 
Sn. Ömer Bey;

Gizleme işlemi var doğrudur işlem yapılacak alan "M7:R256" arasına olduğundan dolayı diğerlerini göstermeye gerek duymadım.
 
Örnek belge böyle olunca asıl soruya odaklanmak güçleşiyor.

Benim anlayabildiğim, size B sütununda 1 olanların adeti gerekiyor.
Eğer isteğin karşılığı bu ise sağdaki tabloda kopyalanacak satır sayısı için =TOPLA($B$7:$B$256) veya =KAÇINCI(MAK($E:$E)+1;N:N;1)-6 formülü işi görür. Başka formül alternatifleri da olabilir elbette.
 
Mesela şöyle olabilir.
Kodda, verilerin yapıştırılacağı alanın AA7'den itibaren sağa ve aşağı olacağı varsayıldı.

VBA:
Sub KOPYALA()
If WorksheetFunction.Sum([B:B]) > 0 Then
    Range("M7:R" & WorksheetFunction.Sum([B:B]) + 6).Copy
    [AA7].PasteSpecial Paste:=xlPasteValuesAndNumberFormats
    Application.CutCopyMode = False
End If
End Sub
 
Çözüm
Durum
Üzgünüz bu konu cevaplar için kapatılmıştır...
Benzer Konular Popüler İçerikler Daha Fazlası
Geri
Üst Alt