HEDEF ARA DÖNGÜSÜ

saka

Altın Üye
Katılım
24 Haziran 2023
Mesajlar
32
Excel Vers. ve Dili
Excel 2016 Türkçe
Altın Üyelik Bitiş Tarihi
25-07-2028
Merhabalar,

Halihazırda kullandığım bir hesaplama tablosunda hedef ara fonksiyonunu makroya satır satır yazdım:

Range("DF7").GoalSeek Range("DK7"), ChangingCell:=Range("N7")
Range("DF8").GoalSeek Range("DK8"), ChangingCell:=Range("N8")
Range("DF9").GoalSeek Range("DK9"), ChangingCell:=Range("N9")
Range("DF10").GoalSeek Range("DK10"), ChangingCell:=Range("N10")
Range("DF11").GoalSeek Range("DK11"), ChangingCell:=Range("N11")
Range("DF12").GoalSeek Range("DK12"), ChangingCell:=Range("N12")
Range("DF13").GoalSeek Range("DK13"), ChangingCell:=Range("N13")
Range("DF14").GoalSeek Range("DK14"), ChangingCell:=Range("N14")
Range("DF15").GoalSeek Range("DK15"), ChangingCell:=Range("N15")
Range("DF16").GoalSeek Range("DK16"), ChangingCell:=Range("N16")
Range("DF17").GoalSeek Range("DK17"), ChangingCell:=Range("N17")
Range("DF18").GoalSeek Range("DK18"), ChangingCell:=Range("N18")
Range("DF19").GoalSeek Range("DK19"), ChangingCell:=Range("N19")
Range("DF20").GoalSeek Range("DK20"), ChangingCell:=Range("N20")


Makrom çalışıyor; ancak tabloya yeni satır eklediğimde veya tablodan satır çıkardığımda makroma ilgili yeni satırı eklemek veya
makromdan ilgili satırı çıkarmak zorunda kalıyorum.

Bu makroyu döngüye nasıl bağlayabilirim?

Ben döngü sayesinde, çalışma sayfasında değişiklik olsa bile ne satır ekleyeyim ne satır sileyim.

Döngü ilk satır ile veri bulunan son satır içerisinde otomatik çalışsın.

İlgilenen arkadaşlara şimdiden teşekkürler.
 

GursoyC

Altın Üye
Katılım
7 Ocak 2015
Mesajlar
553
Excel Vers. ve Dili
Office 2024 Türkçe
Altın Üyelik Bitiş Tarihi
17-05-2028
Sütunlarınız sabit mi? Yoksa ileride tabloya sütun ekleme durumu da sözkonusu olabilir mi?
 
Katılım
15 Mart 2005
Mesajlar
379
Excel Vers. ve Dili
Microsoft 365 En 64 Bit
Altın Üyelik Bitiş Tarihi
20-03-2024
Merhaba,

C++:
Sub test()
Dim fRow, lRow, i As Long

lRow = Cells(Rows.Count, "N").End(xlUp).Row
fRow = 7

For i = fRow To lRow
    Range("DF" & i).GoalSeek Range("DK" & i), ChangingCell:=Range("N" & i)
Next i

End Sub
 

saka

Altın Üye
Katılım
24 Haziran 2023
Mesajlar
32
Excel Vers. ve Dili
Excel 2016 Türkçe
Altın Üyelik Bitiş Tarihi
25-07-2028
Sütunlarınız sabit mi? Yoksa ileride tabloya sütun ekleme durumu da sözkonusu olabilir mi?
Sütunlarım şimdilik sabit; ama ileride sütun eklenebilir de.

Her iki durum için de çözüm önerinizi öğrenmek isterim.
Teşekkürler
 

saka

Altın Üye
Katılım
24 Haziran 2023
Mesajlar
32
Excel Vers. ve Dili
Excel 2016 Türkçe
Altın Üyelik Bitiş Tarihi
25-07-2028
Merhaba,

C++:
Sub test()
Dim fRow, lRow, i As Long

lRow = Cells(Rows.Count, "N").End(xlUp).Row
fRow = 7

For i = fRow To lRow
    Range("DF" & i).GoalSeek Range("DK" & i), ChangingCell:=Range("N" & i)
Next i

End Sub
Çalışmadı.
Hata veriyor ve makro kayıt alanında
Range("DF" & i).GoalSeek Range("DK" & i), ChangingCell:=Range("N" & i)
satırını sarıya boyuyor.
 

GursoyC

Altın Üye
Katılım
7 Ocak 2015
Mesajlar
553
Excel Vers. ve Dili
Office 2024 Türkçe
Altın Üyelik Bitiş Tarihi
17-05-2028
Sütun sabitse ;
Kod:
sub_xyz()

sbs= Cells.Find(What:="*", SearchOrder:=xlRows, _

    SearchDirection:=xlPrevious, LookIn:=xlValues).Row


for i = 7 to sbs

cells(i,110).GoalSeek cells(i,115), ChangingCell:=cells(i,14)

next i

end sub
Sütun değişebilirse sütun başlıklarınız içerisinde ilgili sütunu aratmak zorundasınız.
Bu durumda sütunları belirten sayılar 110,115,14 değil şu şekilde değişmeli: (sütun isimlerinin 1. satırda yazdığını varsayarak)


Kod:
sub_xyz()

sbs= Cells.Find(What:="*", SearchOrder:=xlRows, _

    SearchDirection:=xlPrevious, LookIn:=xlValues).Row


for i = 7 to sbs

cells(i,Range("1:1").Find("ilgili sütun adı").Column) GoalSeek cells(i,Range("1:1").Find("ilgili sütun adı").Column), ChangingCell:=cells(i,Range("1:1").Find("ilgili sütun adı").Column)

next i

end sub
Yine de örnek dosya eklerseniz çok daha sağlıklı cevap alırsınız.
 

saka

Altın Üye
Katılım
24 Haziran 2023
Mesajlar
32
Excel Vers. ve Dili
Excel 2016 Türkçe
Altın Üyelik Bitiş Tarihi
25-07-2028
Çalışmadı.
Hata veriyor ve makro kayıt alanında
Range("DF" & i).GoalSeek Range("DK" & i), ChangingCell:=Range("N" & i)
satırını sarıya boyuyor.
Komut çalışıyor; ama takılıyor.
İlk çalıştırmada, hesaplamayı yapıyor,
akabinde,
Run time error '1004' başvuru geçerli değil
notu geliyor.
Not sayfası, end ile kapatılırsa tekrar aktif oluyor;
debug ile kapatılırsa komut satırı sarıya boyanıyor, tekrar aktif hale gelmesi için Design not düğmesine basmak gerekiyor.

Bu şekilde çalışılması normal mi?
 
Üst