• DİKKAT

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

Formülün VBA Karşılığı Hakkında

  • Konbuyu başlatan Konbuyu başlatan mharat
  • Başlangıç tarihi Başlangıç tarihi
Katılım
9 Ocak 2007
Mesajlar
27
Excel Vers. ve Dili
OFFİCE 2016
Merhabalar,

Bir kaç formülün VBA yazımı ile ilgili lütfen yardım rica ederim.


  1. =EĞER(AA4="";"";EĞER(AA4>BUGÜN();"";EĞER(ETARİHLİ(AA4;BUGÜN();"Y")<=0;"";ETARİHLİ(AA4;BUGÜN();"Y"))))


  • =ETOPLA(İzindb!$B$2:$G$2999;PKFdb!E4;İzindb!$G$2:$G$2999)


  • =EĞER(E80="";"";(H80-E80)-TOPLA.ÇARPIM((Tatildb!$A$2:$A$507<=H80)*(Tatildb!A$2:$A$507>E80)))
 
Yukarıdaki formülü aşağıdaki kodlara ila etmek istemekteyim.

Private Sub cmd_kayit_Click()
Dim k As Worksheet
Dim c As Worksheet
Dim son As Integer
Dim ara As String
Dim bul As Range
Set c = Sheets("PKFdb")
Set k = Sheets("PKF")
ara = Range("PKF!B5")
If ara <> "" Then
Set bul = c.Range("D:D").Find(ara, , xlValues, xlWhole)
If Not bul Is Nothing Then
MsgBox "BU TC KİMLİK NUMARASI BULUNMAKTADIR"
Exit Sub
Else
son = Sheets("PKFdb").Range("A65536").End(xlUp).Row + 1
With Sheets("PKFdb")
'.Visible = xlSheetVisible
.Cells(son, "A") = Sheets(1).Range("B2")
.Cells(son, "B") = Sheets(1).Range("B3")
.Cells(son, "C") = Sheets(1).Range("B4")
.Cells(son, "D") = Sheets(1).Range("B5")
.Cells(son, "E") = Sheets(1).Range("B6")
.Cells(son, "F") = Sheets(1).Range("B7")
.Cells(son, "G") = Sheets(1).Range("B8")
.Cells(son, "H") = Sheets(1).Range("B9")
.Cells(son, "I") = Sheets(1).Range("B10")
.Cells(son, "J") = Sheets(1).Range("B11")
.Cells(son, "K") = Sheets(1).Range("B12")
.Cells(son, "L") = Sheets(1).Range("B13")
.Cells(son, "M") = Sheets(1).Range("B14")
.Cells(son, "N") = Sheets(1).Range("B15")
.Cells(son, "O") = Sheets(1).Range("B16")
.Cells(son, "P") = Sheets(1).Range("B17")
.Cells(son, "Q") = Sheets(1).Range("B18")
.Cells(son, "R") = Sheets(1).Range("B19")
.Cells(son, "S") = Sheets(1).Range("L2")
.Cells(son, "T") = Sheets(1).Range("L3")
.Cells(son, "U") = Sheets(1).Range("L4")
.Cells(son, "V") = Sheets(1).Range("L5")
.Cells(son, "W") = Sheets(1).Range("L6")
.Cells(son, "X") = Sheets(1).Range("L7")
.Cells(son, "Y") = Sheets(1).Range("L8")
.Cells(son, "Z") = Sheets(1).Range("L9")
.Cells(son, "AA") = Sheets(1).Range("L10")
.Cells(son, "AB") = Sheets(1).Range("L11")
.Cells(son, "AC") = Sheets(1).Range("L12")
.Cells(son, "AD") = Sheets(1).Range("L13")
.Cells(son, "AE") = Sheets(1).Range("L14")
.Cells(son, "AF") = Sheets(1).Range("R2")
.Cells(son, "AG") = Sheets(1).Range("R3")
.Cells(son, "AH") = Sheets(1).Range("R4")
.Cells(son, "AI") = Sheets(1).Range("R5")
.Cells(son, "AJ") = Sheets(1).Range("R6")
.Cells(son, "AK") = Sheets(1).Range("R7")
.Cells(son, "AL") = Sheets(1).Range("R8")
.Cells(son, "AM") = Sheets(1).Range("R9")
.Cells(son, "AN") = Sheets(1).Range("R10")
.Cells(son, "AO") = Sheets(1).Range("R11")
.Cells(son, "AP") = Sheets(1).Range("R12")
.Cells(son, "AQ") = Sheets(1).Range("R13")
.Cells(son, "AR") = Sheets(1).Range("R14")
.Cells(son, "AS") = Sheets(1).Range("R15")
.Cells(son, "AT") = Sheets(1).Range("G17")
.Cells(son, "AU") = Sheets(1).Range("G18")
.Cells(son, "AV") = Sheets(1).Range("G19")
.Cells(son, "AW") = Sheets(1).Range("G20")
.Cells(son, "AX") = Sheets(1).Range("G21")
.Cells(son, "BE") = "=IF(son,AA="""","""")"
'.Visible = xlSheetHidden
End With
End If
Else
MsgBox "KAYIT EDİLECEK VERİ BULUNMAMAKTADIR", vbInformation, "D İ K K A T": Exit Sub
End If
Workbooks("Personel Programı.xlsm").Save
cmd_yeni_Click
MsgBox "VERİLERİNİZ KAYIT EDİLMİŞTİR.", , "K A Y I T"
End Sub
 
Merhaba.
Bence bu şekilde kod metnini soru metnine eklemek yerine, örnek belge yüklerseniz daha çabuk ve kesin cevap alırsınız.
Siz cevap yazacak üyenin bu makroyu dahil edeceği bir belge oluşturmasını ve burada sorunuzun çözümünü bulduktan sonra (tabi test edip sonucundan emin olduktan sonra) cevap yazmasını istiyorsunuz.
Örnek belge yüklerseniz cevap verecek kişi belge ile değil makro ile uğraşmış olur.

Ayrıca kod metnini yukarıdaki # işaretine basarak eklemeniz daha uygun olur sanırım.
İyi günler dilerim.
 
Geri
Üst