Çözüldü Kopyala makrosunun boşlukları değer olarak getirmesi

ErolU

Normal Üye

Excel Versiyonu
Excel 2016
Excel Sürümü
64 Bit
Excel Dili
Türkçe
Arkadaşlar,
Bir kopyala makrosu oluşturdum. Formüllü alanı kopyalayıp başka bir yere değer olarak yapıştırıyor.
Yapıştırdığı yerde boşluklar boş görünüyor ama bağ değ dolu say ile bakınca dolu görünüyor.
Bu sorunu çözmek istiyorum.
Yardımlarınızı rica ederim.

İnternette araştırdım şöyle bir kod ile çözülebiliyormuş. Bunu ekteki dosyaya nasıl entegre edebilirim? Varsa farklı bir çözüm de olur.

Kod:
Görüntülemek için giriş yapmalısınız.
(7 satır)
 

Ekli dosyalar

  • Erol U. Kopyala Makrosu.xlsm
    62.5 KB · Görüntüleme: 5
Belgenizin ThisWorkbook bölümündeki SelectionChange kodunun amacını anayamadım.
Bana gereksiz gibi geldiği için silinebilir gibi geldi.

Mevcut kodu aşağıdaki gibi değiştirerek deneyin.

VBA:
Görüntülemek için giriş yapmalısınız.
(18 satır)
 
Teşekkür ederim kod için.
Gönderdiğiniz kod eklediğim dosyada çalıştı, işlemi yaptı. Fakat 12-13 saniye kadar sürüyor. Bu normal mi? Bu kadar uzun sürerse kullanamayacağım.
İkinci durum aynı yapıdaki diğer bir belgede For Each XD In XD için değişken atanmamış hatası veriyor.
 
O zaman belgenizde Option Explicit satırı vardır.
Kodun ilk satırı olarak Dim XD As Range diye bir satır ekleyin.

Süre garip, gerçek belgenizi görseydik, duruma bakabilirdik.

.
 
Ömer Bey,
Dosyamdaki düşeyara formülü işlemi uzatıyor. Dünkü dosyaya bu durumu öngörmediğim için bir formül yazıp geçmiştim.

Eklediğim belgede butona tıklayınca işlemin uzun sürdüğünü göreceksiniz. İşlem süresi asıl dosyamda daha uzun sürüyor.
Düşeyarayı kullanmak zorundayım.

KODDAKİ
Kod:
Görüntülemek için giriş yapmalısınız.
(3 satır)
kısmı tam olarak nasıl işlem yapıyor bilmemekle beraber acaba hücreleri tek tek bulup silip mi diğer hücreye geçiyor diye düşünüyorum.
Eğer böyle ise işlemi kısaltmak için şöyle bir şey yapılabilir mi?

Makro yukarıdaki kod olmadan kopyalamayı yapsın sonra
Range("C7:AM66, AT7:AX66") bölgesindeki boş hücreler(bir şey yazmayan) topluca seçilsin ve ClearContents yapılsın.
 

Ekli dosyalar

  • Erol U. Kopyala Makrosu.xlsm
    73.9 KB · Görüntüleme: 1
Bir de şöyle deneyin.

Copy yerine ilgili alandaki her hücre için;
-- hücre doluysa 93 satır üstündeki aynı sütun hücresine değeri yaz.
-- hücre boşsa (formül sonucu "" ise) 93 satır üstündeki hücre içeriğini temizle.

VBA:
Görüntülemek için giriş yapmalısınız.
(19 satır)
 
Sayın Baran,
Son kodu değil de son koddaki
Application.Calculation = xlCalculationManual
ve
Application.Calculation = xlCalculationAutomatic
satırlarını önceki koda uyguladığımda sorun çözülmüş oldu.

Yardımlarınız için teşekkür ederim. Sağ olun.
 
Konuyu başlatan
Normal Üye
Katılım
Konu Bilgi
Durum
Çözüldü 
Forum
Excel Makro Soruları
Başlangıç tarihi
Son yanıt tarihi
Cevaplar
7
Geri
Üst