For-Next döngüsü hk.

Katılım
12 Nisan 2007
Mesajlar
170
Excel Vers. ve Dili
Office XP
Arkadaşlar yardımınıza ihtiyacım var. Ekteki dosyada altalta 2 tane for-next dönegüsü kullandım ama çalışmadı kodları değiştirdiğimde sürekli döngüye girdi. Yapmak istediğim; satırlardaki isimleri sütunlardaki renkli alanlara yazması.
 

kulomer46

Altın Üye
Katılım
23 Mart 2007
Mesajlar
1,513
Excel Vers. ve Dili
Microsoft Office LTSC Professional Plus 2021 - Türkçe
Altın Üyelik Bitiş Tarihi
08-06-2027
Şu şekilde deneyin..
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
For i = 3 To 9
Cells(2, i + 2) = Cells(i, 4)
Next
End Sub
 

Orion1

Uzman
Uzman
Katılım
1 Mart 2005
Mesajlar
22,254
Excel Vers. ve Dili
Win7 Home Basic TR 64 Bit

Ofis-2010-TR 32 Bit
Ekli dosyayı inceleyiniz.:cool:
Kod:
Sub aktar()
Dim i As Byte
For i = 3 To 9
    Cells(2, i + 2).Value = Cells(i, "D").Value
Next
MsgBox "İşlem Tamam..!!"
End Sub
 

kulomer46

Altın Üye
Katılım
23 Mart 2007
Mesajlar
1,513
Excel Vers. ve Dili
Microsoft Office LTSC Professional Plus 2021 - Türkçe
Altın Üyelik Bitiş Tarihi
08-06-2027
Sütunları satırlara veya satırları sütunlara çevirmek için,
ilgili alanı mouse ile seçiniz,
kopyala yapınız,
yapıştırmak istediğiniz ilk hücreyi seçiniz,
özel yapıştırı seçiniz,
işlemi tersine çevir'i tıklayıp tamam a basınız..
Böylece sütunları satırlar ve satırları sütunlara rahatlıkla çevirebilirsiniz..
 
Katılım
12 Nisan 2007
Mesajlar
170
Excel Vers. ve Dili
Office XP
Sayın Kulomer46'nın söylediği yöntemle çözdüm. Çok pratik. Teşekkür ediyorum. Evren Bey size de teşekkürler. Satırları sütunlara ters çevirerek yapıştırma konusunu biliyordum fakat artık tüm sorunlarımı vba ile çözme kararı aldım excelde olan bilgimi vba'da da geliştirmek istiyorum. İlginizden dolayı teşekkür ediyorum.
 
Katılım
12 Nisan 2007
Mesajlar
170
Excel Vers. ve Dili
Office XP
Arkadaşlar bu sefer sonsuz döngüye girdi. Bir türlü çözemedim bu for-nexti.

Sub Worksheet_Change(ByVal Target As Range)
Satır_Ürün_Sayısı = WorksheetFunction.CountA(Range("b:b")) - 1

For Sütun = 6 To (5 + Satır_Ürün_Sayısı)
Cells(2, Sütun) = Cells(Sütun - 3, 2)
Next Sütun
End Sub
 
Katılım
12 Nisan 2007
Mesajlar
170
Excel Vers. ve Dili
Office XP
Aşağıdaki şekilde If ile kontrol ettirip sonlandırdım ama yine de sonsuz döngüden çıkmıyor.

Sub Worksheet_Change(ByVal Target As Range)
Satır_Ürün_Sayısı = WorksheetFunction.CountA(Range("b:b")) - 1

For sütun = 6 To (5 + Satır_Ürün_Sayısı)
Cells(2, sütun) = Cells(sütun - 3, 2)
If sütun = (5 + Satır_Ürün_Sayısı) Then
Exit Sub
Else:
End If
Next sütun
End Sub
 
Üst