Skip to main content

AccessTr.neT


Puantaj Makro Çalışması

Puantaj Makro Çalışması

Photo #7
(17/12/2021, 12:31)lemoncher2 yazdı: Öncelikle adım adım incelemek gerekebilir kullandığınız office sürümleri nedir? ms kütüphanesi ile alakalı bir durum olabilir. Ayrıca kullandığınız officede makroları vs. Devredışı bırak gibi özellikleride kontrol ettiniz mi?
Makroda sıkıntı yok çünkü ilk kaydet dediğim zaman kayıt yapıyor başka bir tesis seçtiğimde hata alıyorum. İşin ilginç yanı aynı kodlar ile mesai işleminde hata almıyorum. Kodlarda bir farklılık yok. Bire bir aynı kaydet kaydı getir.


Örneğin Eylül 2020 içine 3 4 puantaj farklı sayfalarda kaydedicem o ayın puntajları bunu profosyonel olan Excel rahatlıkla yapa biliyorum. Ama standard 2013 bunu yapamıyorum sadece profesyonel olan Excel rahatlıkla oluyor. Hata almıyorum. Aldığım hata yukarıda belirttiğim gibi.

En ilginç tarafı mesailerde kodlama aynı ama kayıt yapıyor sadece puntaj kısmında sayfayı açamıyor bu nedenle Makroda hata veriyor. Excel kitabını açıp kayıt yapamıyor /xl/worksheets/sheet1.xml. hatasını düzeltip elle kendim kaydettiğim zaman inciyi kaydediyor üçüncü de yine aynı hata yine elle kaydet yapmam gerekiyor.

Kaydettiğim Excel hatası

[Resim: do.php?img=11424]
Metin belgesindeki Gelen bilgi
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<recoveryLog xmlns="http://schemas.openxmlformats.org/spreadsheetml/2006/main"><logFileName>error122080_01.xml</logFileName><summary>'C:\Users\mert.sevinc\Desktop\Yeni klasör\Puantaj Eylül 2023.xlsx' dosyasında hata algılandı</summary><removedFeatures summary="Aşağıda kaldırılan özelliklerin listesi verilmiştir:"><removedFeature>Kaldırılan Özellik: /xl/worksheets/sheet1.xml parçasından Veri doğrulama</removedFeature></removedFeatures></recoveryLog>
.rar Puataj.rar (Dosya Boyutu: 199,93 KB | İndirme Sayısı: 17)
Son Düzenleme: 17/12/2021, 13:43, Düzenleyen: merttr07.
Cevapla
#8
Sorun hala güncel ve çözemedim destek ola bilecek bir arkadaş mevcut mu.
Cevapla
#9
Merhaba Kayıtlı Mesai getir butonuna tıklayınca mı hata veriyor. Bende tıklayınca hata verdi kodu bu şekilde düzeltince çözüm oldu.

Kod:
Private Sub CommandButton3_Click() 'Mesai kaydı getir
Dim son As Long, syfAra As Worksheet
Dim wb As Workbook, ws As Worksheet, dosya As String, say As Integer
Dim d31 As String, e13 As String, yol As String


d31 = Range("D31").Value
e13 = Range("E13").Value

'dosya = ThisWorkbook.Path & Application.PathSeparator & e13 & ".xlsx"
dosya = ThisWorkbook.Path & Application.PathSeparator & Format(e13, "mmmm yyyy") & ".xlsx"
'dosya = yol & Application.PathSeparator & Format(e13, "mmmm yyyy") & ".xlsx"

say = 0
        If Dir(dosya) <> "" Then 'Klasörde E13 deki veri ile ayni isimde excel yoksa
            Set wb = Workbooks.Open(dosya)
            For Each syfAra In wb.Worksheets
               If syfAra.Name = d31 Then
                  say = say + 1
                  Exit For
               End If
            Next
        
            If say > 0 Then 'Kapali excelde D31 deki adla ayni isimd sayfa yoksa
                Set ws = wb.Worksheets(d31)
            Else
                MsgBox d31 & vbNewLine & "Bulunamadi.." _
                     , vbCritical, "Hata": wb.Close 0: GoTo son
            End If
        Else
            MsgBox Format(e13, "mmmm yyyy") & ".xlsx" & vbNewLine & "Bulunamadi.." _
                     , vbCritical, "Hata": wb.Close 0: GoTo son
            
        End If

son = ws.Cells(Rows.Count, 1).End(3).Row

With ws
    Application.DisplayAlerts = False
    .Range(.Cells(5, "F"), .Cells(son, "aj")).Copy
     ThisWorkbook.Activate
    Range("F41").PasteSpecial xlPasteValuesAndNumberFormats
End With
wb.Close 0

Application.CutCopyMode = False
Set wb = Nothing: Set ws = Nothing
Application.DisplayAlerts = True
son:

Application.CutCopyMode = False
Set wb = Nothing: Set ws = Nothing
Application.DisplayAlerts = True
End Sub

Cevapla
#10
(28/12/2021, 15:49)lemoncher2 yazdı: Merhaba Kayıtlı Mesai getir butonuna tıklayınca mı hata veriyor. Bende tıklayınca hata verdi kodu bu şekilde düzeltince çözüm oldu.

Kod:
Private Sub CommandButton3_Click() 'Mesai kaydı getir
Dim son As Long, syfAra As Worksheet
Dim wb As Workbook, ws As Worksheet, dosya As String, say As Integer
Dim d31 As String, e13 As String, yol As String


d31 = Range("D31").Value
e13 = Range("E13").Value

'dosya = ThisWorkbook.Path & Application.PathSeparator & e13 & ".xlsx"
dosya = ThisWorkbook.Path & Application.PathSeparator & Format(e13, "mmmm yyyy") & ".xlsx"
'dosya = yol & Application.PathSeparator & Format(e13, "mmmm yyyy") & ".xlsx"

say = 0
        If Dir(dosya) <> "" Then 'Klasörde E13 deki veri ile ayni isimde excel yoksa
            Set wb = Workbooks.Open(dosya)
            For Each syfAra In wb.Worksheets
              If syfAra.Name = d31 Then
                  say = say + 1
                  Exit For
              End If
            Next
       
            If say > 0 Then 'Kapali excelde D31 deki adla ayni isimd sayfa yoksa
                Set ws = wb.Worksheets(d31)
            Else
                MsgBox d31 & vbNewLine & "Bulunamadi.." _
                    , vbCritical, "Hata": wb.Close 0: GoTo son
            End If
        Else
            MsgBox Format(e13, "mmmm yyyy") & ".xlsx" & vbNewLine & "Bulunamadi.." _
                    , vbCritical, "Hata": wb.Close 0: GoTo son
           
        End If

son = ws.Cells(Rows.Count, 1).End(3).Row

With ws
    Application.DisplayAlerts = False
    .Range(.Cells(5, "F"), .Cells(son, "aj")).Copy
    ThisWorkbook.Activate
    Range("F41").PasteSpecial xlPasteValuesAndNumberFormats
End With
wb.Close 0

Application.CutCopyMode = False
Set wb = Nothing: Set ws = Nothing
Application.DisplayAlerts = True
son:

Application.CutCopyMode = False
Set wb = Nothing: Set ws = Nothing
Application.DisplayAlerts = True
End Sub


Mesai Değil puantaj sıkıntı oluyor oda Excel standart ise.
Cevapla
#11
Farklı bir MS sürümünde açtığınızda hata alıyorsunuz acaba Referansları hata aldığınız sürümde kontrol ettiniz mi? hata aldığınız sürümde referanslarda MISSING yazıyorsa MISSING yazan referansı tekrar eklemeniz gerekir.
Cevapla
#12
(06/01/2022, 22:54)lemoncher2 yazdı: Farklı bir MS sürümünde açtığınızda hata alıyorsunuz acaba Referansları hata aldığınız sürümde kontrol ettiniz mi? hata aldığınız sürümde referanslarda MISSING yazıyorsa MISSING yazan referansı tekrar eklemeniz gerekir.
Bunu nasıl anlaya bilirim peki.
Cevapla

Bir hesap oluşturun veya yorum yapmak için giriş yapın

Yorum yapmak için üye olmanız gerekiyor

ya da