Döngü Sutun A ve B

Katılım
2 Mayıs 2006
Mesajlar
226
Excel Vers. ve Dili
office 2003
Almanca
slm

If Range("A1")= 0 Then
Range("B1")= " "
End If

arkadaslar, bu kodu ben nasil döngü haline getirebilirim.

burada a1 0 ise b1 hicbir yazi rakam olmuyor.

a2 0 ise b2 bos
a3 0 ise b3 bos
... ....... ....
a154 0 ise b154 bos

bu hale nasil yapilir

saygilar
 

Necdet

Moderatör
Yönetici
Katılım
4 Haziran 2005
Mesajlar
15,371
Excel Vers. ve Dili
Ofis 365 Türkçe
Merhaba,

Aşağıdaki kodları kullanabilirsiniz.

Kod:
Sub Deneme()
For i = 1 To [A65536].End(3).Row
    If Cells(i, "A") = 0 Then Cells(i, "B") = ""
Next i
End Sub
 

Korhan Ayhan

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

Aşağıdaki kodlardan birini kullanabilirsiniz.

1. Yöntem;
Kod:
Option Explicit
 
Sub DÖNGÜ_1()
    Dim X As Long
    For X = 1 To 65536
    If Range("A" & X) = 0 Then Range("B" & X) = ""
    Next
End Sub
2. Yöntem;
Kod:
Option Explicit
 
Sub DÖNGÜ_2()
    Dim X As Long
    For X = 1 To 65536
    If Cells(X, 1) = 0 Then Cells(X, 2) = ""
    Next
End Sub
 
Katılım
2 Mayıs 2006
Mesajlar
226
Excel Vers. ve Dili
office 2003
Almanca
slm

bayramimizin 3. günündeyiz. bu sayfaya girdigim zaman benim icin bir bayram günü gibi geliyor. cok seyler istifade ettim.

Necdet yesertener ve Korhan Ayhan sizlere cok tesekkürler .

kodlariniz ilac gibi geldi.

kodlama matigini bir türlü yakalayamadim.

saygilar
 
Katılım
2 Mayıs 2006
Mesajlar
226
Excel Vers. ve Dili
office 2003
Almanca
slm
Option Explicit

Sub DÖNGÜ_2()
Dim X As Long
For X = 1 To 65536
If Cells(X, 1) = 0 Then Cells(X, 2) = ""
Next
End Sub

burada sadece 2.sutun degilde, 2.3.4.5.6.7.8 gibi sutunlara kapsayabilirmi ?

burada gercekten soru sordukca cok seyler ögreniyor.
sizler bir arsiv siniz.
 

Necdet

Moderatör
Yönetici
Katılım
4 Haziran 2005
Mesajlar
15,371
Excel Vers. ve Dili
Ofis 365 Türkçe
Merhaba,

Aşağıda aynı işi yapan 2 değişik kodu görecekseniz. Siz bunlara bakarak sütun adedini çoğaltıp azaltabilirsiniz.

Kod:
Sub Deneme()
For i = 1 To [A65536].End(3).Row
    If Cells(i, "A") = 0 Then
        Cells(i, "B") = ""
        Cells(i, "C") = ""
        Cells(i, "D") = ""
        Cells(i, "E") = ""
Next i
End Sub
Kod:
Sub Deneme1()
For i = 1 To [A65536].End(3).Row
    If Cells(i, "A") = 0 Then Range(Cells(i, "B"), Cells(i, "E")) = ""
Next i
End Sub
Döngü başında ekrandaki hareketliliği gizleyen ve döngü sonunda da gösteren kodları da eklerseniz çalışma hızı daha da artar.

Kod:
Sub Deneme1()
[B]Application.ScreenUpdating = False[/B]
For i = 1 To [A65536].End(3).Row
    If Cells(i, "A") = 0 Then Range(Cells(i, "B"), Cells(i, "E")) = ""
Next i
[B]Application.ScreenUpdating = True[/B]
End Sub
gibi.

2. koddaki Range aşağıdaki gibi de yazılabilir.

Kod:
Sub Deneme2()
Application.ScreenUpdating = False
For i = 1 To [A65536].End(3).Row
If Cells(i, "A") = 0 Then [B][COLOR=red]Range("B" & i & ":E" & i)[/COLOR][/B] = ""
Next i
Application.ScreenUpdating = True
End Sub
 
Üst