Userformda kaydedilen satırın sonuna vba ile istenilen formül ekleme

meleklerim

Altın Üye
Katılım
2 Ekim 2013
Mesajlar
337
Excel Vers. ve Dili
ofis 2019 türkçe
windows 10 pro türkçe
Altın Üyelik Bitiş Tarihi
23-07-2025
Arkadaşlar herkese iyi hafta sonları.
Kullandığım bir vba projesinde kaydedilen satırın sonuna (12. Sütun) aşağıda yazılı formülü eklemek istiyorum. Normalde o satırın sonuna excelde formül yazıp çoğaltarak yapıyordum. Ancak kayıt sayısı ne kadar artacağı bilinmediğinden 10-15 bin satır aşağı çekip formülü çoğalltığımda projenin çok yavaş çalıştığını farkettim. her satırda olacağına, sadece kaydedilen satırın sonunda olsa ya da bir üst satırdaki formülü aşağıya doğru 1 satır çekerek çoğaltsa sayfa boşu boşuna formülle dolmayacak diye düşündüm. Ancal bir türlü beceremedim.

çoğaltarak ya da "O1" sayfasının 12. sütununda kayıt yapılan satıra yazılması gereken formül
Örneğin 2. satıra yazılması gereken formül
=EĞER(H2="";"";EĞER(H2=$L$1;MAK($L$1:L1)+1;""))

3. satıra yazılması gereken formül
=EĞER(H3="";"";EĞER(H3=$L$1;MAK($L$1:L2)+1;""))

böyle böyle kayıt yapıldıkça devam etmesi için kaydet tuşuna nasıl bir satır eklemeliyim?

Umarım derdimi anlatabilmişimdir.
yardımcı olacak arkadaşlara şimdiden teşekkür ederim.
 

Cengiz Demir

Altın Üye
Katılım
29 Haziran 2018
Mesajlar
604
Excel Vers. ve Dili
Office 365 TR (32 Bit)
Altın Üyelik Bitiş Tarihi
05-04-2025
Bu kodlar işinizi görür sanırım :)

C++:
Dim sst As Long

sst = Sheets("O1").Cells(Rows.Count, 12).End(xlUp).Row + 1
Sheets("O1").Range("L" & sst).Formula = "=If(H" & sst & "="""","""",IF(H" & sst & "=$L$1,MAX($L$1:L" & sst & ")+1,""""))"
 

meleklerim

Altın Üye
Katılım
2 Ekim 2013
Mesajlar
337
Excel Vers. ve Dili
ofis 2019 türkçe
windows 10 pro türkçe
Altın Üyelik Bitiş Tarihi
23-07-2025
Bu kodlar işinizi görür sanırım :)

C++:
Dim sst As Long

sst = Sheets("O1").Cells(Rows.Count, 12).End(xlUp).Row + 1
Sheets("O1").Range("L" & sst).Formula = "=If(H" & sst & "="""","""",IF(H" & sst & "=$L$1,MAX($L$1:L" & sst & ")+1,""""))"
teşekkür ederim şöyle küçük bir hata var
sst değişkeni If(H" & sst & kısmında işe yarıyor ancak
MAX($L$1:L" & sst & " kısmında sst değeri değil sst nin 1 eksiği olması gerekiyor. Nasıl düzeltebilirim?
=EĞER(H2="";"";EĞER(H2=$L$1;MAK($L$1:L1)+1;""))
 

Cengiz Demir

Altın Üye
Katılım
29 Haziran 2018
Mesajlar
604
Excel Vers. ve Dili
Office 365 TR (32 Bit)
Altın Üyelik Bitiş Tarihi
05-04-2025
Rica ederim. L1 dalgınlığıma gelmiş.
Korhan üstad sst ile ilgili cevabı vermiş :)

teşekkür ederim şöyle küçük bir hata var
sst değişkeni If(H" & sst & kısmında işe yarıyor ancak
MAX($L$1:L" & sst & " kısmında sst değeri değil sst nin 1 eksiği olması gerekiyor. Nasıl düzeltebilirim?
=EĞER(H2="";"";EĞER(H2=$L$1;MAK($L$1:L1)+1;""))
 

meleklerim

Altın Üye
Katılım
2 Ekim 2013
Mesajlar
337
Excel Vers. ve Dili
ofis 2019 türkçe
windows 10 pro türkçe
Altın Üyelik Bitiş Tarihi
23-07-2025
ilgilendiğiniz için çok teşekkür ederim. her soruda çözümün yanısıra birşeyler de öğreniyorum. Varolun @Cengiz Demir @Korhan Ayhan
 
Üst