DİZİ formülü hücre adresini güncellemiyor

baydeniro

Altın Üye
Katılım
26 Ocak 2007
Mesajlar
4,625
Excel Vers. ve Dili
Ofis 2016
Altın Üyelik Bitiş Tarihi
20-02-2025
Merhaba Arkadaşlar,
F1 hücresindeki formülü makro haline getirip aşağıdaki kod ile uyguluyorum. Formülü el ile kopyalayınca normal çalışıyor ama kod ile uygulayınca E1 değişmiyor !

Sub Makro1()

Range("F1:F3").FormulaArray = "=MIN(IF(R2C1:R10C1=RC[-1],R2C2:R10C2))"
End Sub

229122
 

Ekli dosyalar

Katılım
21 Aralık 2016
Mesajlar
720
Excel Vers. ve Dili
Office 365 TR
Selamlar,
Şöyle deneyin

Sub Makro1()
Range("F1").FormulaArray = "=MIN(IF(R2C1:R10C1=RC[-1],R2C2:R10C2))"
Range("F1:F3").FillDown
End Sub
 

baydeniro

Altın Üye
Katılım
26 Ocak 2007
Mesajlar
4,625
Excel Vers. ve Dili
Ofis 2016
Altın Üyelik Bitiş Tarihi
20-02-2025
Selamlar,
Şöyle deneyin

Sub Makro1()
Range("F1").FormulaArray = "=MIN(IF(R2C1:R10C1=RC[-1],R2C2:R10C2))"
Range("F1:F3").FillDown
End Sub
52779 üstadım, çok teşekkür ediyorum. Harika oldu. Sağlıcakla kalın.
 
Katılım
21 Aralık 2016
Mesajlar
720
Excel Vers. ve Dili
Office 365 TR
Ben teşekkür ediyorum...
Kolaylar gelsin sizlere...
 

Korhan Ayhan

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

Forumun arşivinde bulunması açısından paylaşıyorum.

1. Yöntem diğer arkadaşımızın paylaştığı yöntemle aynıdır. Sadece yazım tekniği farklıdır. Bu sebeple paylaştım.

C++:
Sub Makro1()
    With Range("F1")
        .FormulaArray = "=MIN(IF(A$2:A$10=E1,B$2:B$10))"
        .Resize(3).FillDown
    End With
End Sub

Sub Makro2()
    With Range("F1")
        .FormulaArray = "=MIN(IF(A$2:A$10=E1,B$2:B$10))"
        .Copy
        .Offset(1).Resize(2).PasteSpecial xlPasteFormulas
        Application.CutCopyMode = False
    End With
End Sub

Sub Makro3()
    For X = 1 To 3
        Cells(X, "F").FormulaArray = "=MIN(IF(A$2:A$10=" & Cells(X, 5).Address(0, 0) & ",B$2:B$10))"
    Next
End Sub
 

baydeniro

Altın Üye
Katılım
26 Ocak 2007
Mesajlar
4,625
Excel Vers. ve Dili
Ofis 2016
Altın Üyelik Bitiş Tarihi
20-02-2025
Alternatifler;

Forumun arşivinde bulunması açısından paylaşıyorum.

1. Yöntem diğer arkadaşımızın paylaştığı yöntemle aynıdır. Sadece yazım tekniği farklıdır. Bu sebeple paylaştım.

C++:
Sub Makro1()
    With Range("F1")
        .FormulaArray = "=MIN(IF(A$2:A$10=E1,B$2:B$10))"
        .Resize(3).FillDown
    End With
End Sub

Sub Makro2()
    With Range("F1")
        .FormulaArray = "=MIN(IF(A$2:A$10=E1,B$2:B$10))"
        .Copy
        .Offset(1).Resize(2).PasteSpecial xlPasteFormulas
        Application.CutCopyMode = False
    End With
End Sub

Sub Makro3()
    For X = 1 To 3
        Cells(X, "F").FormulaArray = "=MIN(IF(A$2:A$10=" & Cells(X, 5).Address(0, 0) & ",B$2:B$10))"
    Next
End Sub
Korhan Ayhan üstadım çok çok teşekkür ediyorum. Harika kodlar. Sağlıcakla kalın
 
Üst