• DİKKAT

    DOSYA İndirmek/Yüklemek için ÜCRETLİ ALTIN ÜYELİK Gereklidir!
    Altın Üyelik Hakkında Bilgi

Satırları tek tek Enter 'lamak

excellkurdu

Altın Üye
Katılım
16 Nisan 2008
Mesajlar
313
Excel Vers. ve Dili
Türkçe Microsoft Office Excel 2007
Arkadaşlar aşağıdaki kodun kısa hali nasıl yapılır?
Amacım C5 den başlayarak, C250 ye kadar hücreleri tek tek seçip enter lamak.

Kod:
Sub C_Yenileme()
[C5].Select
ActiveCell.FormulaR1C1 = Range("C5")
[C6].Select
ActiveCell.FormulaR1C1 = Range("C6")
[C7].Select
ActiveCell.FormulaR1C1 = Range("C7")
[C8].Select
ActiveCell.FormulaR1C1 = Range("C8")
[C9].Select
ActiveCell.FormulaR1C1 = Range("C9")
[C10].Select
ActiveCell.FormulaR1C1 = Range("C10")
[C11].Select
ActiveCell.FormulaR1C1 = Range("C11")
'250 ye kadar devam ediyor. ..................
End Sub
 
Merhaba
Bu şekilde deneyin

Kod:
Sub C_Yenileme()
For i = 5 To 250
    Cells(i, 3).Select
    ActiveCell.FormulaR1C1 = Range("c" & i)
Next i
End Sub
 
Hücreyi seçmeye gerek yok.:cool:
Kod:
Sub C_Yenileme()
For i = 5 To 250
    Cells(i, 3).Value = Range("c" & i).Value
Next i
End Sub
 
Alternatif:

Kod:
Sub Test()
    Range("C5:C250") = Range("C5:C250").Value
End Sub

.
 
Alternatif:

Kod:
Sub Test()
    Range("C5:C250") = Range("C5:C250").Value
End Sub

.
Bu kodu kullanmamdaki amaç C sutunundaki hücreleri tetiklediğimde Makro ile 4. ve 185 inci sütün içerikleri de değişiyor. Bu kod hızlı ama Type mismatch HATASI verdi. Bu hatayı düzeltebilir miyiz? Kodum aşağıdadır:
Kod:
Private Sub Worksheet_Change(ByVal Target As Range)
'aktif maddeleri otomatik dolduruyor
If Intersect(Target, Range("C5:C10000")) Is Nothing Then Exit Sub
If Target.Value <> "" Then
    Set BUL = Sheets("BiyosidallerFare").Range("A:A").Find(Target.Value, , , xlWhole, , xlNext)
        If Not BUL Is Nothing Then
        Cells(Target.Row, 4) = Sheets("BiyosidallerFare").Range("D" & BUL.Row)
        Cells(Target.Row, 185) = Sheets("BiyosidallerFare").Range("M" & BUL.Row)
   End If
End If
End Sub

Sub Test()
    Range("C5:C250") = Range("C5:C250").Value
End Sub
 
Merhaba.

Yanlış anlamayınız ama, özellikle ALTIN ÜYELİK sahibi olanların, sorularını örnek belge olmadan sormalarını anlayamıyorum.

Konu açılış mesajında da belirtmediğinize göre cevap yazanların,
belgenizdeki ilgili sayfada Worksheet_Change kod'u kullanıldığını bilmesi/tahmin etmesi mümkün mü sizce ?

Yanlış anlamıyorsam; Worksheet_Change kod blokundaki If Intersect(Targ..... satırının üstüne aşağıdaki satırı ekleyerek deneyiniz.
If Target.Count > 1 Then Exit Sub
.
 
Son düzenleme:
Geri
Üst