Excel Forum

Excel Forum (http://www.excel.web.tr/index.php)
-   Makro-VBA (http://www.excel.web.tr/forumdisplay.php?f=48)
-   -   Formülü makro ya çevirmek (http://www.excel.web.tr/showthread.php?t=168056)

yanginci34 10-11-2017 18:17

Formülü makro ya çevirmek
 
Merhaba arkadaşlar; Dosyam da şöyle bir formül var =EGER(A3<A4;H3+1;H3) ben bu formülü makro ya ve H sütununda A sütununun son dolu hücresine kadar uygulamak istiyorum. Bir de formül hücrelerde görünmese iyi olur. Şimdiden teşekkürler.

antonio 10-11-2017 19:53

Merhaba,
Aşağıdaki Formülü deneyebilirsiniz. Kırmızı işaretli Sayfa ismini kendi sayfanıza göre düzenleyiniz.
Kod:

Sub formul_makrolu()
With Sayfa1
    ss = .Range("A" & Rows.Count).End(3).Row
    For i = 4 To ss
        If .Range("A" & i - 1).Value < .Range("A" & i).Value Then
            .Range("H" & i).Value = .Range("H" & i - 1).Value + 1
        Else
            .Range("H" & i).Value = .Range("H" & i - 1).Value
        End If
    Next i
End With
End Sub


umit1907 11-11-2017 10:16

Alıntı:

antonio tarafından gönderildi (Mesaj 916989)
Merhaba,
Aşağıdaki Formülü deneyebilirsiniz. Kırmızı işaretli Sayfa ismini kendi sayfanıza göre düzenleyiniz.
Kod:

Sub formul_makrolu()
With Sayfa1
    ss = .Range("A" & Rows.Count).End(3).Row
    For i = 4 To ss
        If .Range("A" & i - 1).Value < .Range("A" & i).Value Then
            .Range("H" & i).Value = .Range("H" & i - 1).Value + 1
        Else
            .Range("H" & i).Value = .Range("H" & i - 1).Value
        End If
    Next i
End With
End Sub


Merhabalar,
Buradaki kodların formüldeki değerleri nasıldır. Mantığını anlamak için size zahmet olmazsa yazabilirmisiniz. Örneğin. =EGER(A3<A4;H3+1;H3) Burdaki A3 hücresi kodda nasıl belirtilmiştir.

yanginci34 11-11-2017 11:40

Sayın Antonio çok teşekkür ederim. Sayın Ümit bey kod anladığım kadarıyla sadece A3 olarak değil A sütununun son dolu hücresine kadar kapsıyor.

antonio 11-11-2017 16:33

Alıntı:

yanginci34 tarafından gönderildi (Mesaj 917048)
Sayın Antonio çok teşekkür ederim. Sayın Ümit bey kod anladığım kadarıyla sadece A3 olarak değil A sütununun son dolu hücresine kadar kapsıyor.

Evet doğru anlamışsınız.
.Range("A" & Rows.Count).End(3).Row kodu, A sütununun son dolu satırını verir.
İyi çalışmalar.


Saat 06:13

Powered by vBulletin Version 3.7.2
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.