Koşullu Kopyalama

Katılım
6 Ekim 2006
Mesajlar
51
Excel Vers. ve Dili
Excel XP, Excel 2003, English
Merhaba,

Başka bir bilgisayar programındaki dataları excel formatında çekip, biçimini düzeltmem gerekiyor; bir çok kısmını hallettim ancak yapmam gereken bir şey daha var;

Örneğin A sutunundaki datalar şöyle olsun

A1 Hesap:60394
A2 (BOŞ)
A3 (BOŞ)
.
.
.
A23 Hesap:60396
.

Ben a sütununda değer olduğu zaman bunu eşdeğer b sutununa kopyalamak istiyorum. Örneğin A1 doluysa, A1'deki değerin B1'e kopyalanmasını istiyorum; ancak yine örneğin A2 boş olduğu için a2 b2'nin üzerine kopyalanmamalı. Çünkü b2'de başka bilgiler olabiliyor bu durumda o bilgiler boş datalarla değişmiş oluyorlar.


Bu konuda bir fikri olan varsa ve yardımcı olabilirse çok sevinirim.
Teşekkür ederim.

iyi çalışmalar
 

Ali

Uzman
Katılım
21 Temmuz 2005
Mesajlar
7,895
Excel Vers. ve Dili
İş:Excel 2016-Türkçe
Aşağıdaki kodları modüle ekleyerek deneyin.


Kod:
Sub deneme()
For i = 1 To 23
If Cells(i, 1) <> "" Then Cells(i, 2) = Cells(i, 1)
Next
End Sub
 

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
41,579
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Selamlar,

Aşağıdaki kodu kullanabilirsiniz.

Kod:
Sub KOŞULLU_KOPYALA()
    For X = 1 To [A65536].End(3).Row
    If Not IsEmpty(Cells(X, 1)) Then
    Cells(X, 2) = Cells(X, 1)
    End If
    Next
    MsgBox "İŞLEMİNİZ TAMAMLANMIŞTIR.", vbInformation
End Sub
 
Katılım
4 Nisan 2006
Mesajlar
999
Excel Vers. ve Dili
OFFICE 2021 Türkçe
Sub kopyala()
Dim sayac As Range
For Each sayac In Range("a1:a23")
If sayac <> "" Then
sayac.Offset(0, 1) = sayac
End If
Next sayac
End Sub
 
Katılım
6 Ekim 2006
Mesajlar
51
Excel Vers. ve Dili
Excel XP, Excel 2003, English
Her iki cevap için çok teşekkür ederim. Her ikisi de çalışıyor.

İyi çalışmalar dilerim
 
Üst