• DİKKAT

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

Mevcut koda ek yapmak istiyorum.

  • Konbuyu başlatan Konbuyu başlatan s.savas
  • Başlangıç tarihi Başlangıç tarihi
Katılım
12 Ocak 2009
Mesajlar
838
Excel Vers. ve Dili
2003
Merhaba arkadaşlar.
Aşağıdaki koda ek yapmak istiyorum. Fakat yapmak istediğim bana çok karmaşık geldi.

Kod:
If OptionButton4.Value = True Then 'Yeni Kayıt
For Each bak In Range("B1:B" & WorksheetFunction.CountA(Range("B1:B65000")))
If bak.Value = TextBox2.Value Then
MsgBox "Bu Kayıt numarası bulundu."
Exit Sub
End If

If TextBox2.Text = "" Then
MsgBox "Lütfen önce Malzemenin / İlacın Adını Giriniz...", , "Kayıt Hatası!!!"
Exit Sub
End If

If TextBox6.Text = "" Then
MsgBox "Lütfen Kritik Seviye Bilgisini Giriniz...", , "Kayıt Hatası!!!"
Exit Sub
End If

Next bak
For Each bak In Range("C1:C" & WorksheetFunction.CountA(Range("C1:C65000")))
If StrConv(bak.Value, vbUpperCase) = StrConv(TextBox2.Value, vbUpperCase) Then
MsgBox "" & TextBox2.Value & "Bu isminde bir kaydınız zaten mevcut, aynı malzemeden mükerrer kayıt yapamazsınız!"
Exit Sub
End If

Next bak
n = Cells(65536, 3).End(xlUp).Row - 4
Label9 = n

For i = 1 To Worksheets.Count
    With Sheets(i)
        Satır = .Cells(Rows.Count, "C").End(xlUp).Row + 1
        .Cells(Satır, "B").Value = Label9 * 1
        .Cells(Satır, "B").HorizontalAlignment = xlCenter
        .Cells(Satır, "C").Value = TextBox2.Value
        .Cells(Satır, "D").Value = TextBox8.Value
        .Cells(Satır, "AP").Value = TextBox6.Value
        .Cells(Satır, "A").Value = "=IF(RC[3]="""",0,RC[3]-R2C3)"
        .Cells(Satır, "AO").Value = "=SUM(RC[-5]:RC[-2])"
        .Cells(Satır, "AN").Value = "=SUM(RC[-34]:RC[-4])"
        .Cells(Satır, "AQ").Value = "=IF(AND(RC[-39]<=0),""Yok"",IF(AND(RC[-39]<RC[-1]),""Kritik"",IF(AND(RC[-39]>=RC[-1]),""Mevcut"")))"
    End With
Next i

MsgBox "" & TextBox2.Value & " Malzemesine Ait Yeni Kayıt Başarıyla Yapılmıştır. Malzeme Miktarını Tanımlamak İçin Lütfen Yeni Malzeme Girişi Seçeneğini Kullanınız. İyi Çalışmalar Dilerim", vbInformation, "Sn.  " & Application.UserName
Label9 = WorksheetFunction.Count(Range("b1:b65500")) + 1

Call TÜM_SAYFALARDA_SIRALAMA


cmdTEMİZLE_Click
ComboBox2_Change
TextBox2.SetFocus
Unload UserForm1
UserForm1.Show
End If

Yapılacak ilave ile
1-) TextBox5 sadece aktif olan sayfanın AK sütununa yazmalı.
2-) Aktif olan sayfanın sağındaki veya kalan aylar için E sütununa aşağıdaki kodu yazmalı.
Kod:
"=IF(RC[-3]="""","""",VLOOKUP(RC[-3],Mart!C[-3]:C[36],40,0))"
Aktif olan ay mart olduğu için Nisan!E6=EĞER(B6="";"";DÜŞEYARA(B6;Mart!B:AO;40;0)) formülünü örnek olarak kullandım.
Diğer aylar bir birini takip etmeli, Nisan, Mayıs, Haziran gibi.
 

Ekli dosyalar

Arkadaşlar 1.sorumu aşağıdaki yöntem ile çözdüm.
Kod:
With Sheets(ComboBox1.Text)
.Cells(Satır, "AK").Value = TextBox5.Value
.Cells(Satır, "AK").HorizontalAlignment = xlCenter
End With
Ancak 2.soru için bir döngü oluşturamadım.
1-) Döngü, ComboBox1 deki gösterilen aydan başlayıp, Aralıkta bitmeli
2-) ComboBox1 deki aydan sonra gelen ay adı ile eşleşen sayfanın E sütununa, bir önceki ayın adını yazarak
Kod:
"=IF(RC[-3]="""","""",VLOOKUP(RC[-3],[COLOR="Blue"][U]Bir Önceki Ay Adı[/U][/COLOR]!C[-3]:C[36],40,0))"
formülünü yazmalı.
Yardımcı olacak arkadaşlara teşekkür ederim.
 
Geri
Üst