Soru İsmi belli olmayan excel dosyasından veri çekme

Katılım
30 Mart 2019
Mesajlar
54
Excel Vers. ve Dili
2016 Türkçe
Altın Üyelik Bitiş Tarihi
09-04-2020
Merhaba, bana göre imkansız birşey istiyorum ama, yine de sormak istedim. Bir programda excele aktar diye seçenek var ve excel aktar denilince, aşağıda ki gibi raporlar oluşturuyor. Bu raporların isimlerini malesef otomatik olarak ve aşağıda da görebileceğiniz gibi rastgele oluşturuyor. Bu raporlardan sadece .........-BÜFE RAPORU olan excelleri içini hiç açmadan başka bir excele veri çekebilmek mümkün müdür?
Şimdide teşekkür ederim.

 
Katılım
30 Mart 2019
Mesajlar
54
Excel Vers. ve Dili
2016 Türkçe
Altın Üyelik Bitiş Tarihi
09-04-2020
Mümkündür ama örnek dosya eklemeniz gerekir.
Merhaba,

2 adet dosya ekliyorum. ÖRNEK 3 adlı excelde ÜRÜNLER - İKRAM ve SATIŞ sekmeleri var aynı zamanda S1 - S2 - S3 sayfaları var. Diğer attığım 2019_04_06 18_49_51-Büfe Raporu isimli excelde ise STOK ADI - ÖDEME TİPİ - SATIŞ MİKTARI gibi sekmeler var. Burada ki STOK ADI ve ÜRÜNLER sekmeleri eşit ve ÖDEME TİPİ Peşin olanlar ÖRNEK 3 de ki SATIŞ sekmesine, STOK ADI ve ÜRÜNLER sekmesi eşit ve ÖDEME TİPİ Yönetim Misafir olanlar ÖRNEK 3 de ki İKRAM sekmesine yazılması gerekiyor.

Ama dediğim gibi 2019_04_06 18_49_51-Büfe Raporu isimli olan excel her zaman bu isimde olmuyor sürekli farklı isimler oluyor. Sabit olan tekşey -Büfe Raporu.

Ben raporlama yaptığımda sürekli farklı excel ismi verecek ve bunu gün gün çekmeye çalışıyorum. Konuyu anlatmaya çalıştım örnek dosyalarıda ekledim. Umarım anlatabilmişimdir. Teşekkürler.

ÖRNEK DOSYALAR
 

veyselemre

Özel Üye
Katılım
9 Mart 2005
Mesajlar
3,646
Excel Vers. ve Dili
Pro Plus 2021
S1-S2-S3 nedir?
Veri alınacak dosyayı siz mi seçeceksiniz?
Sadece bir dosyadan mı alınacak?
En yeni dosyadan mı alınacak?
Alınacak dosyaların yeri ?

Gibi sorulara açıklık getirirseniz, başka bir arkadaş yardımcı olmazsa yarın çözeriz.
 
Katılım
30 Mart 2019
Mesajlar
54
Excel Vers. ve Dili
2016 Türkçe
Altın Üyelik Bitiş Tarihi
09-04-2020
S1-S2-S3 nedir?
Veri alınacak dosyayı siz mi seçeceksiniz?
Sadece bir dosyadan mı alınacak?
En yeni dosyadan mı alınacak?
Alınacak dosyaların yeri ?

Gibi sorulara açıklık getirirseniz, başka bir arkadaş yardımcı olmazsa yarın çözeriz.
Örnek Dosyaların içerisinde olan sayfalardan sekme başlıklarından bahsettim.S1-S2-S3 Sayfalar
Veri alınacak dosyayı .......-Büfe Raporu.xls den çekmem gerekiyor. Ama ..... olan ver değişiklik gösteriyor sürekli.
En yeni dosyadan alma işlemi olmuyor çünkü yukarıda ki resimde de görebilirsiniz. Sadece ....-Büfe Raporu exceli yok. Film Hasılat Raporu, Büfe Detay Rapor gibi exceller de var.
Dosyanın yoluda yukarıdaki resimde mevcut. C:\BiletiniAl\Reports dosya yolu bu şekilde, eğer yardımcı olabilirseniz çok sevinirim
 

veyselemre

Özel Üye
Katılım
9 Mart 2005
Mesajlar
3,646
Excel Vers. ve Dili
Pro Plus 2021
1-En son dosya derken isminde BüfeRaporu geçen en son dosyadan bahsediyorum.
2-S1-S2-S3 sayfaları nedir? Siz istediğiniz sayfa (S1/S2/S3) içindeyken mi klasörden BüfeRaporu dosyasını seçip almak mı istiyorsunuz?
3-Attığınız resimde bir tane BüfeRaporu var 2tane BüfeDetayRaporu var? Detay dosyasından da mı alınacak? Yoksa bu üç dosyadan S1-S2-S2 sayfalarına mı alınacak?
4-Hatalı işlem olmaması için BüfeRapor dosyalarından varsa bir kaç tane daha ekleyin. Bir daha uğraşılmasın.
 
Katılım
30 Mart 2019
Mesajlar
54
Excel Vers. ve Dili
2016 Türkçe
Altın Üyelik Bitiş Tarihi
09-04-2020
1-En son dosya derken isminde BüfeRaporu geçen en son dosyadan bahsediyorum.
2-S1-S2-S3 sayfaları nedir? Siz istediğiniz sayfa (S1/S2/S3) içindeyken mi klasörden BüfeRaporu dosyasını seçip almak mı istiyorsunuz?
3-Attığınız resimde bir tane BüfeRaporu var 2tane BüfeDetayRaporu var? Detay dosyasından da mı alınacak? Yoksa bu üç dosyadan S1-S2-S2 sayfalarına mı alınacak?
4-Hatalı işlem olmaması için BüfeRapor dosyalarından varsa bir kaç tane daha ekleyin. Bir daha uğraşılmasın.
Haklısınız tek bir tane Büfe Raporu olduğu için anlatımım sıkıntılı oldu. Aşağıya bir kaç tane daha Büfe Raporu aldım. İsimleri bu şekilde farklı farklı geliyor. S1-S2-S3 dediğim yerler, İlk Bugün en son alınan BüfeRaporu excelinin içindeki verileri S1 e yazması, yarın alınacak en son Büfe Raporu excelide S2ye yazması. Yani S1-S2-S3 dediğim yerler günler.

2019_04_06_...... -Büfe Raporu bu dosya isminde farketmişsinizdir. Gün bilgisini veriyor. Sadece gün içinde bir kaç defa daha alınabiliyor bu rapor ama ben bugün en son alınan raporun içindeki verileri S1 sayfasındaki uygun sekmelere dağıtmam gerekiyor.

Sorularınızı okuyunca evet bu bilgileri vermedim evet şu bilgileri vermedim tarzında düşündüm. Umarım şuan biraz daha açabilmişimdir konuyu.

 

veyselemre

Özel Üye
Katılım
9 Mart 2005
Mesajlar
3,646
Excel Vers. ve Dili
Pro Plus 2021
Benden bu kadar...
Dosyalar;
Kod:
Sub sayfaDuzenle()
'veyselEMRE 06042019
    With Application.FileDialog(msoFileDialogOpen)
        .InitialFileName = "C:\BiletiniAl\Reports\*Büfe*Rapor*.xls"
        If .Show = -1 Then fileopen = .SelectedItems(1)
    End With

    If fileopen <> "" Then
        Set wb = Workbooks.Open(fileopen, ReadOnly:=True)
        Set sf = wb.Sheets("Sheet")

        With Intersect(sf.UsedRange, sf.Columns("G"))
            If WorksheetFunction.CountBlank(.Cells) > 0 Then
                .SpecialCells(xlCellTypeBlanks).EntireRow.Delete
            End If
        End With
        With Intersect(sf.UsedRange, sf.Columns("F"))
            If WorksheetFunction.CountBlank(.Cells) > 0 Then
                .SpecialCells(xlCellTypeBlanks).FormulaR1C1 = "=R[-1]C"
                .Value = .Value
            End If
        End With
        sf.Columns("A:E").Delete Shift:=xlToLeft
        sf.Columns("C:D").Delete Shift:=xlToLeft
        sf.Rows("1").Delete Shift:=xlToLeft
        With Intersect(sf.UsedRange, sf.Columns("B"))
            For Each huc In .Cells
                If huc.Value = "Yönetim Misafir" Then
                    huc.Value = huc.Offset(, 1).Value
                    huc.Offset(, 1).ClearContents
                Else
                    huc.Value = ""
                End If
            Next
        End With
        lst = sf.UsedRange
        wb.Close False
    End If
    With CreateObject("Scripting.Dictionary")
        Dim w(1 To 1, 1 To 2)
        For i = LBound(lst) To UBound(lst)
            ky = lst(i, 1)
            If Not .exists(ky) Then .Item(ky) = w
            y = .Item(ky)
            If lst(i, 2) <> "" Then y(1, 1) = lst(i, 2)
            If lst(i, 3) <> "" Then y(1, 2) = lst(i, 3)
            .Item(ky) = y
        Next i
        son = Cells(Rows.Count, 1).End(3).Row
        Range("B2:G" & son).ClearContents
        For i = 2 To son
            ky = Cells(i, 1).Value
            If .exists(ky) Then
                Cells(i, 2).Resize(, 2).Value = .Item(ky)
                .Remove ky
            End If
        Next i
        If .Count > 0 Then
            kys = .keys
            itm = .items
            [E2].Value = "Hatalı Kayıtlar"
            For i = LBound(kys) To UBound(kys)
                Cells(i + 3, "E").Value = kys(i)
                Cells(i + 3, "F").Resize(, 2).Value = itm(i)
            Next i
        End If
    End With
    Columns.AutoFit
    Application.Speech.Speak ("OK")
End Sub
 
Son düzenleme:
Katılım
30 Mart 2019
Mesajlar
54
Excel Vers. ve Dili
2016 Türkçe
Altın Üyelik Bitiş Tarihi
09-04-2020
Benden bu kadar...
Dosyalar;
Kod:
Sub sayfaDuzenle()
'veyselEMRE 06042019
    With Application.FileDialog(msoFileDialogOpen)
        .InitialFileName = "C:\BiletiniAl\Reports\*Büfe*Rapor*.xls"
        If .Show = -1 Then fileopen = .SelectedItems(1)
    End With

    If fileopen <> "" Then
        Set wb = Workbooks.Open(fileopen, ReadOnly:=True)
        Set sf = wb.Sheets("Sheet")

        With Intersect(sf.UsedRange, sf.Columns("G"))
            If WorksheetFunction.CountBlank(.Cells) > 0 Then
                .SpecialCells(xlCellTypeBlanks).EntireRow.Delete
            End If
        End With
        With Intersect(sf.UsedRange, sf.Columns("F"))
            If WorksheetFunction.CountBlank(.Cells) > 0 Then
                .SpecialCells(xlCellTypeBlanks).FormulaR1C1 = "=R[-1]C"
                .Value = .Value
            End If
        End With
        sf.Columns("A:E").Delete Shift:=xlToLeft
        sf.Columns("C:D").Delete Shift:=xlToLeft
        sf.Rows("1").Delete Shift:=xlToLeft
        With Intersect(sf.UsedRange, sf.Columns("B"))
            For Each huc In .Cells
                If huc.Value = "Yönetim Misafir" Then
                    huc.Value = huc.Offset(, 1).Value
                    huc.Offset(, 1).ClearContents
                Else
                    huc.Value = ""
                End If
            Next
        End With
        lst = sf.UsedRange
        wb.Close False
    End If
    With CreateObject("Scripting.Dictionary")
        Dim w(1 To 1, 1 To 2)
        For i = LBound(lst) To UBound(lst)
            ky = lst(i, 1)
            If Not .exists(ky) Then .Item(ky) = w
            y = .Item(ky)
            If lst(i, 2) <> "" Then y(1, 1) = lst(i, 2)
            If lst(i, 3) <> "" Then y(1, 2) = lst(i, 3)
            .Item(ky) = y
        Next i
        son = Cells(Rows.Count, 1).End(3).Row
        Range("B2:G" & son).ClearContents
        For i = 2 To son
            ky = Cells(i, 1).Value
            If .exists(ky) Then
                Cells(i, 2).Resize(, 2).Value = .Item(ky)
                .Remove ky
            End If
        Next i
        If .Count > 0 Then
            kys = .keys
            itm = .items
            [E2].Value = "Hatalı Kayıtlar"
            For i = LBound(kys) To UBound(kys)
                Cells(i + 3, "E").Value = kys(i)
                Cells(i + 3, "F").Resize(, 2).Value = itm(i)
            Next i
        End If
    End With
    Columns.AutoFit
    Application.Speech.Speak ("OK")
End Sub


Hocam siz neler yaptınız böyle, size çok teşekkür ederim. 2 saattir yapılan işlemleri anlamaya uğraşıyorum ve size gerçekten çok teşekkür ederim. Yazdığınız makroyu iyice anladım. Bunu sürekli kullanabilirim. Tekrar tekrar çok teşekkür ederim size
 

veyselemre

Özel Üye
Katılım
9 Mart 2005
Mesajlar
3,646
Excel Vers. ve Dili
Pro Plus 2021
Kod:
Sub sayfaDuzenle2()
'veyselEMRE 07042019
    With Application.FileDialog(msoFileDialogOpen)
        .InitialFileName = "C:\BiletiniAl\Reports\*Büfe*Rapor*.xls"
        If .Show = -1 Then fileopen = .SelectedItems(1)
    End With

    If fileopen = "" Then Exit Sub

    Set wb = Workbooks.Open(fileopen, ReadOnly:=True)

    Set sf = wb.Sheets("Sheet")
    sf.Rows("1:5").Delete
    With sf.UsedRange
        With Intersect(.Cells, sf.Columns("G"))

            If WorksheetFunction.CountBlank(.Cells) > 0 Then .SpecialCells(xlCellTypeBlanks).EntireRow.Delete

            With .Offset(, -1)
                If WorksheetFunction.CountBlank(.Cells) > 0 Then
                    .SpecialCells(xlCellTypeBlanks).FormulaR1C1 = "=R[-1]C"
                    .Value = .Value
                End If
            End With

            sf.Columns("A:E").Delete
            sf.Columns("C:D").Delete
            .Cells.Value = Evaluate(Replace("IF( @=""Yönetim Misafir"", OFFSET(@,,1) ,"""")", "@", .Cells.Address))
            If WorksheetFunction.CountA(.Cells) > 0 Then .Cells.SpecialCells(xlCellTypeConstants, 1).Offset(, 1) = ""

        End With
    End With
    lst = sf.UsedRange
    wb.Close False

    With CreateObject("Scripting.Dictionary")
        Dim w(1 To 1, 1 To 2)
        For i = LBound(lst) To UBound(lst)
            ky = lst(i, 1)
            If Not .exists(ky) Then .Item(ky) = w
            y = .Item(ky)
            If lst(i, 2) <> "" Then y(1, 1) = lst(i, 2)
            If lst(i, 3) <> "" Then y(1, 2) = lst(i, 3)
            .Item(ky) = y
        Next i
        son = Cells(Rows.Count, 1).End(3).Row
        Range("B2:G" & son).ClearContents
        For i = 2 To son
            ky = Cells(i, 1).Value
            If .exists(ky) Then
                Cells(i, 2).Resize(, 2).Value = .Item(ky)
                .Remove ky
            End If
        Next i
        If .Count > 0 Then
            kys = .keys
            itm = .items
            [E2].Value = "Hatalı Kayıtlar"
            For i = LBound(kys) To UBound(kys)
                Cells(i + 3, "E").Value = kys(i)
                Cells(i + 3, "F").Resize(, 2).Value = itm(i)
            Next i
        End If
    End With
    Columns.AutoFit
    Application.Speech.Speak ("OK")
End Sub
Kod:
Sub adoRapor()
'veyselEMRE 07042019
    With Application.FileDialog(msoFileDialogOpen)
        .InitialFileName = "C:\BiletiniAl\Reports\*Büfe*Rapor*.xls"
        If .Show = -1 Then fileopen = .SelectedItems(1)
    End With

    If fileopen = "" Then Exit Sub
    strCon = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source='" & fileopen & _
             "';Extended Properties=""Excel 12.0;HDR=YES;IMEX=1"";"

    strsql = "SELECT [Stok Adı], IIF ([Ödeme Tipi]='Yönetim Misafir', [Satış Miktarı], NULL), " & _
             "IIF ([Ödeme Tipi]='Pesin', [Satış Miktarı], NULL) FROM [SHEET$5:1000] WHERE NOT [Ödeme Tipi] IS NULL"

    Set rs = CreateObject("Adodb.RecordSet")
    rs.Open strsql, strCon

    lst = rs.getrows

    With CreateObject("Scripting.Dictionary")
        Dim w(1 To 1, 1 To 2)
        For i = LBound(lst, 2) To UBound(lst, 2)
            If lst(0, i) <> "" Then ky = lst(0, i)
            If Not .exists(ky) Then .Item(ky) = w
            y = .Item(ky)
            If lst(1, i) <> "" Then y(1, 1) = lst(1, i)
            If lst(2, i) <> "" Then y(1, 2) = lst(2, i)
            .Item(ky) = y
        Next i
        son = Cells(Rows.Count, 1).End(3).Row
        Range("B2:G" & son).ClearContents
        For i = 2 To son
            ky = Cells(i, 1).Value
            If .exists(ky) Then
                Cells(i, 2).Resize(, 2).Value = .Item(ky)
                .Remove ky
            End If
        Next i
        If .Count > 0 Then
            kys = .keys
            itm = .items
            [E2].Value = "Hatalı Kayıtlar"
            For i = LBound(kys) To UBound(kys)
                Cells(i + 3, "E").Value = kys(i)
                Cells(i + 3, "F").Resize(, 2).Value = itm(i)
            Next i
        End If
    End With
    Columns.AutoFit
    Application.Speech.Speak ("OK")

    rs.Close
End Sub
 
Katılım
30 Mart 2019
Mesajlar
54
Excel Vers. ve Dili
2016 Türkçe
Altın Üyelik Bitiş Tarihi
09-04-2020
Kod:
Sub sayfaDuzenle2()
'veyselEMRE 07042019
    With Application.FileDialog(msoFileDialogOpen)
        .InitialFileName = "C:\BiletiniAl\Reports\*Büfe*Rapor*.xls"
        If .Show = -1 Then fileopen = .SelectedItems(1)
    End With

    If fileopen = "" Then Exit Sub

    Set wb = Workbooks.Open(fileopen, ReadOnly:=True)

    Set sf = wb.Sheets("Sheet")
    sf.Rows("1:5").Delete
    With sf.UsedRange
        With Intersect(.Cells, sf.Columns("G"))

            If WorksheetFunction.CountBlank(.Cells) > 0 Then .SpecialCells(xlCellTypeBlanks).EntireRow.Delete

            With .Offset(, -1)
                If WorksheetFunction.CountBlank(.Cells) > 0 Then
                    .SpecialCells(xlCellTypeBlanks).FormulaR1C1 = "=R[-1]C"
                    .Value = .Value
                End If
            End With

            sf.Columns("A:E").Delete
            sf.Columns("C:D").Delete
            .Cells.Value = Evaluate(Replace("IF( @=""Yönetim Misafir"", OFFSET(@,,1) ,"""")", "@", .Cells.Address))
            If WorksheetFunction.CountA(.Cells) > 0 Then .Cells.SpecialCells(xlCellTypeConstants, 1).Offset(, 1) = ""

        End With
    End With
    lst = sf.UsedRange
    wb.Close False

    With CreateObject("Scripting.Dictionary")
        Dim w(1 To 1, 1 To 2)
        For i = LBound(lst) To UBound(lst)
            ky = lst(i, 1)
            If Not .exists(ky) Then .Item(ky) = w
            y = .Item(ky)
            If lst(i, 2) <> "" Then y(1, 1) = lst(i, 2)
            If lst(i, 3) <> "" Then y(1, 2) = lst(i, 3)
            .Item(ky) = y
        Next i
        son = Cells(Rows.Count, 1).End(3).Row
        Range("B2:G" & son).ClearContents
        For i = 2 To son
            ky = Cells(i, 1).Value
            If .exists(ky) Then
                Cells(i, 2).Resize(, 2).Value = .Item(ky)
                .Remove ky
            End If
        Next i
        If .Count > 0 Then
            kys = .keys
            itm = .items
            [E2].Value = "Hatalı Kayıtlar"
            For i = LBound(kys) To UBound(kys)
                Cells(i + 3, "E").Value = kys(i)
                Cells(i + 3, "F").Resize(, 2).Value = itm(i)
            Next i
        End If
    End With
    Columns.AutoFit
    Application.Speech.Speak ("OK")
End Sub
Kod:
Sub adoRapor()
'veyselEMRE 07042019
    With Application.FileDialog(msoFileDialogOpen)
        .InitialFileName = "C:\BiletiniAl\Reports\*Büfe*Rapor*.xls"
        If .Show = -1 Then fileopen = .SelectedItems(1)
    End With

    If fileopen = "" Then Exit Sub
    strCon = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source='" & fileopen & _
             "';Extended Properties=""Excel 12.0;HDR=YES;IMEX=1"";"

    strsql = "SELECT [Stok Adı], IIF ([Ödeme Tipi]='Yönetim Misafir', [Satış Miktarı], NULL), " & _
             "IIF ([Ödeme Tipi]='Pesin', [Satış Miktarı], NULL) FROM [SHEET$5:1000] WHERE NOT [Ödeme Tipi] IS NULL"

    Set rs = CreateObject("Adodb.RecordSet")
    rs.Open strsql, strCon

    lst = rs.getrows

    With CreateObject("Scripting.Dictionary")
        Dim w(1 To 1, 1 To 2)
        For i = LBound(lst, 2) To UBound(lst, 2)
            If lst(0, i) <> "" Then ky = lst(0, i)
            If Not .exists(ky) Then .Item(ky) = w
            y = .Item(ky)
            If lst(1, i) <> "" Then y(1, 1) = lst(1, i)
            If lst(2, i) <> "" Then y(1, 2) = lst(2, i)
            .Item(ky) = y
        Next i
        son = Cells(Rows.Count, 1).End(3).Row
        Range("B2:G" & son).ClearContents
        For i = 2 To son
            ky = Cells(i, 1).Value
            If .exists(ky) Then
                Cells(i, 2).Resize(, 2).Value = .Item(ky)
                .Remove ky
            End If
        Next i
        If .Count > 0 Then
            kys = .keys
            itm = .items
            [E2].Value = "Hatalı Kayıtlar"
            For i = LBound(kys) To UBound(kys)
                Cells(i + 3, "E").Value = kys(i)
                Cells(i + 3, "F").Resize(, 2).Value = itm(i)
            Next i
        End If
    End With
    Columns.AutoFit
    Application.Speech.Speak ("OK")

    rs.Close
End Sub
Merhaba, bu son attığınız makro ilk attığınızdan ne gibi farklılığı var onu anlayamadım. Öğrenmek için soruyorum bunu, birde ben bu makroları asıl kullanmam gereken yerde malesef kullanamadım. Şimdi attığım örnek bu makroyu asıl kullanmak istediğim yer. Ama oraya taşıyamadım. Birleştirilmiş hücreler olması sorun çıkarıyor sanırım. Birleştirilmiş hücreleri açtığımda da , makro çalışıyor fakat sağında kalan herşeyi siliyor.
Size zahmet olmaz ise birde bu örnek üzerinde bu makroyu nasıl uygulayabilirim bakabilirmisiniz. Satılan ve İkram sekmesi bu örnekte de mevcut, birde aklıma takılan diğer bir soru da indirimli küçük boy mısır , indirimli orta boy mısır gibi ismini aramak yerine indirimli satış yerine yazabilirmiyim. Nasıl yapabilirim. Anlatımım yine kötü olmuş olabilir. Kusura bakmayın. Siz sorunda daha uygun bir şekilde açıklayabiliyorum ve tekrardan çok teşekkür ederim

ÖRNEK DOSYA
 
Katılım
30 Mart 2019
Mesajlar
54
Excel Vers. ve Dili
2016 Türkçe
Altın Üyelik Bitiş Tarihi
09-04-2020
Merhaba, bu son attığınız makro ilk attığınızdan ne gibi farklılığı var onu anlayamadım. Öğrenmek için soruyorum bunu, birde ben bu makroları asıl kullanmam gereken yerde malesef kullanamadım. Şimdi attığım örnek bu makroyu asıl kullanmak istediğim yer. Ama oraya taşıyamadım. Birleştirilmiş hücreler olması sorun çıkarıyor sanırım. Birleştirilmiş hücreleri açtığımda da , makro çalışıyor fakat sağında kalan herşeyi siliyor.
Size zahmet olmaz ise birde bu örnek üzerinde bu makroyu nasıl uygulayabilirim bakabilirmisiniz. Satılan ve İkram sekmesi bu örnekte de mevcut, birde aklıma takılan diğer bir soru da indirimli küçük boy mısır , indirimli orta boy mısır gibi ismini aramak yerine indirimli satış yerine yazabilirmiyim. Nasıl yapabilirim. Anlatımım yine kötü olmuş olabilir. Kusura bakmayın. Siz sorunda daha uygun bir şekilde açıklayabiliyorum ve tekrardan çok teşekkür ederim

ÖRNEK DOSYA

@veyselemre mesajı görünce lütfen dönüş yapabilirmisiniz
 
Katılım
30 Mart 2019
Mesajlar
54
Excel Vers. ve Dili
2016 Türkçe
Altın Üyelik Bitiş Tarihi
09-04-2020
Lütfen biri yardımcı olabilir mi
 
Katılım
30 Mart 2019
Mesajlar
54
Excel Vers. ve Dili
2016 Türkçe
Altın Üyelik Bitiş Tarihi
09-04-2020
@veyselemre merhaba, defalarca konu açtım bu sorumla ilgili, sizide sürekli rahatsız ediyorum bunun için ama lütfen bir kere daha yardımcı olabilirmisiniz
 

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
42,256
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Merhaba,

İlk eklediğiniz örnek dosya ile son eklediğiniz arasında ne bağlantı var?

Forumdaki en itici durumlardan biriside sonradan değişen dosyalardır. Forum müdavimleri kıymetli vakitlerini ayırıp sorunu olan üyelerimizin sorularını cevaplıyorlar. Fakat sonradan dosya değiştiğinde bir daha cevap verme isteği maalesef kırılıyor.

Sizde tam olarak bu durumu yaşamışsınız.
 
Katılım
30 Mart 2019
Mesajlar
54
Excel Vers. ve Dili
2016 Türkçe
Altın Üyelik Bitiş Tarihi
09-04-2020
Merhaba,

İlk eklediğiniz örnek dosya ile son eklediğiniz arasında ne bağlantı var?

Forumdaki en itici durumlardan biriside sonradan değişen dosyalardır. Forum müdavimleri kıymetli vakitlerini ayırıp sorunu olan üyelerimizin sorularını cevaplıyorlar. Fakat sonradan dosya değiştiğinde bir daha cevap verme isteği maalesef kırılıyor.

Sizde tam olarak bu durumu yaşamışsınız.
Merhaba, ben işim halledilsin diye dosya mı atayım üyeler yapsın tarzında düşünmüyorum. Benim örnek dosya olarak hazırlamam da ki amaç, örnek dosya üzerinde yapıldığında daha rahat anlayabilirim ve kendi imkanlarımla asıl uygulamam gereken yerde uygulayabilirim diye çaba sarfediyorum. Öğrenmek için burada bu soruları soruyorum, çok uğraştım, videolar izledim anlamadığım yerleri anlamaya çalıştım. Ben sizler gibi profesyonel değilim malesef. Bu örneği asıl kullanmam gereken yere malesef uygulayamadım. Bundan önceki açtığım sorularda aynı bu şekilde örnek dosya ile sorumu sordum, cevaplarımı alınca da gerçekten anlayarak öğrenerek asıl uygulamam gereken yere uyguladım. Ama dediğim gibi bu örnek beni çok aştı. Öğrenemedim. Asıl dosyayı atıp tekrar yardım isteme sebebim; ilk örnekte @veyselemre beyin yardımları ile benim için çok büyük olan bu cevabını değiştirip uygulamaya çalıştım ama malesef, sağında kalan sütünlar silindi, açıkcası örnekde B ve C sütünlarını, asıl dosyamda ki J ve K sütunlarına taşıyamadım. Bu yüzden ikinci kez yardım istedim ve ilk örnek kodları ile asıl örnek kodlarını inceleyip nerede hata yaptığımı anlayabileceğimi düşündüm.
@çıtır ve @veyselemre bana şuana kadar yardımcı olan kişiler ve ikisine de binlerce kez teşekkür ederim. Emek verdiler bana dönüş yaptılar. Bu durumun itici olarak gözüktüğünü bilmiyordum, dediğim gibi işim halledilsin değil öğrenmek istiyorum.
 

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
42,256
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Birçok üyemizin düştüğü yanılgıya düştünüzü görüyorum.

Makrolar öyle ha deyince öğrenilecek kurgular değil ki!

Emek ve zaman ayırmak gerekiyor.

Siz sorunuzu fonksiyonlar bölümüne sormuşsunuz. Öğrenmeniz için büfe dosyalarını tek bir excelde gün bazında sekmelerde toplayın.

Daha sonra ana dosyanıza formülle (ETOPLA-ÇOKETOPLA) toplamları aldırabilirsiniz. Büfe raporlarınızda birleştirilmiş hücreler olduğu için biraz düzenleme yapmanız gerekebilir. Bu işlemlerde sizin öğrenmenizi sağlayacaktır.
 
Katılım
30 Mart 2019
Mesajlar
54
Excel Vers. ve Dili
2016 Türkçe
Altın Üyelik Bitiş Tarihi
09-04-2020
Birçok üyemizin düştüğü yanılgıya düştünüzü görüyorum.

Makrolar öyle ha deyince öğrenilecek kurgular değil ki!

Emek ve zaman ayırmak gerekiyor.

Siz sorunuzu fonksiyonlar bölümüne sormuşsunuz. Öğrenmeniz için büfe dosyalarını tek bir excelde gün bazında sekmelerde toplayın.

Daha sonra ana dosyanıza formülle (ETOPLA-ÇOKETOPLA) toplamları aldırabilirsiniz. Büfe raporlarınızda birleştirilmiş hücreler olduğu için biraz düzenleme yapmanız gerekebilir. Bu işlemlerde sizin öğrenmenizi sağlayacaktır.
Ben ha deyince öğreneyim demedim, zaten öyle birşey yapamamda. Emek ve zaman ayırıyorum. Ben sorumu sorarken cevabının makro ile olacağını bilmiyordum. Soruyu sorarken de bu işlem yapılabilir mi onu bile bilmiyorum diye belirtmiştim.

Cevabınız için teşekkür ederim. Anlatımın baya bir kötü oluyor malesef, umarım bana büyük yardımları olan @veyselemre tekrardan bir göz atar bu konuya. Çünkü dediğim gibi anlatımım baya kötü ve buna rağmen beni anlayabildi kendileri.
Sizlere de tekrardan teşekkür ederim Korhan Bey, uyarılarınız ve yardımlarınız için
 
Üst