• DİKKAT

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

Stok takip tablo macro hatası! acil yardım lütfen

Merhaba.
ThisWorkbook kod sayfasındaki kodları silin yerine aşağıdakileri kopyalayın.

Kod:
Private Sub Workbook_Open()
Tarihkontrol
ActiveWorkbook.Unprotect
ActiveSheet.Unprotect
    ThisWorkbook.Sheets("SETUP").Visible = True
    ThisWorkbook.Sheets("MAIN").Select
    Range("A1").Select
    ThisWorkbook.Sheets("SETUP").Visible = False
    
ActiveWorkbook.Protect
ActiveSheet.Protect
End Sub

Sub Tarihkontrol()
    Dim Sayfa As Variant
    Dim TarihBul As Range

    For Each Sayfa In Array("PRODUCTION", "OUTSTOCKS", "FEED")
        Worksheets(Sayfa).Unprotect
        Set TarihBul = Worksheets(Sayfa).Range("B:B").Find(what:=Date, lookat:=xlWhole)
        If TarihBul Is Nothing Then
            With Worksheets(Sayfa).Cells(Rows.Count, "B").End(xlUp)(2, 1).End(xlUp)(2, 1)
                .EntireRow.FillDown
                .Value = Date
                
            End With
        End If
        Set TarihBul = Nothing
        Worksheets(Sayfa).Protect
    Next
End Sub
 
merhaba yardım ve ilginiz için teşekkür ederim. kodu thisworkbook yapıştırdım ama bu sefer "Range("C" & ThisWorkbook.Sheets("PRODUCTION").Range("BJ2").Value).Select" hatası verdi
 
Private Sub Worksheet_Activate()
Dim sonSatir As Variant
Dim hedefSayfa As Worksheet

' Olası kritik çökmelerde Excel ayarlarının bozuk kalmaması için hata kontrolü
On Error GoTo HataYonetimi

' Ekran hareketlerini ve olayları kapat (Hızlandırmak ve titremeyi önlemek için)
Application.ScreenUpdating = False
Application.EnableEvents = False

' Kodun çalıştığı OUTSTOCKS sayfasını nesne olarak tanımlıyoruz
Set hedefSayfa = ThisWorkbook.Sheets("OUTSTOCKS")

' 1. Korumaları Güvenli Sırada Kaldır
ThisWorkbook.Unprotect
hedefSayfa.Unprotect

' Önce sayfanın kendisini ekranda aktif hale getiriyoruz (Select hatasını önlemek için)
hedefSayfa.Activate

' 2. Sütun Gizleme İşlemini Düzenle
' Önce açıp sonra gizlemek yerine doğrudan hedef sütunları gizliyoruz
hedefSayfa.Columns("AK:CG").Hidden = True

' Ekran yakınlaştırmasını sabitle
ActiveWindow.Zoom = 100

' 3. BJ2 Hücresi İçin Güvenlik Filtresi (Tür Uyuşmazlığı Koruması)
sonSatir = hedefSayfa.Range("BJ2").Value

' BJ2'de formül hatası yoksa ve değer 0'dan büyük bir sayıysa hedef hücreyi seç
If Not IsError(sonSatir) Then
If IsNumeric(sonSatir) And sonSatir > 0 Then
hedefSayfa.Range("C" & sonSatir).Select
GoTo KorumalariKapat ' Seçim başarılı, koruma adımına geç
End If
End If

' Eğer BJ2 boşsa, metinse veya hatalıysa çökme olmaması için güvenli liman olarak C1'i seç
hedefSayfa.Range("C1").Select

KorumalariKapat:
HataYonetimi:
' 4. Korumaları Yeniden Aktif Et (Her durumda çalışır)
hedefSayfa.Protect
ThisWorkbook.Protect

' Excel ayarlarını normale döndür
Application.ScreenUpdating = True
Application.EnableEvents = True
End Sub



kodunu yazınca dosya kullanılmaya açıldı teşekkürler
 
merhaba yardım ve ilginiz için teşekkür ederim. kodu thisworkbook yapıştırdım ama bu sefer "Range("C" & ThisWorkbook.Sheets("PRODUCTION").Range("BJ2").Value).Select" hatası verdi
O satırı silip yerine aşağıdaki satırı ekleyin.
Kod:
Range("B:B").Find(what:=Date).Offset(0, 1).Activate
 
Geri
Üst