• DİKKAT

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

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

Katılım
2 Ekim 2013
Mesajlar
347
Excel Vers. ve Dili
ofis 2019 türkçe
windows 10 pro türkçe
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.
 
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,""""))"
 
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;""))
 
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;""))
 
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
 
Geri
Üst