Dosyaya Gönderme

Katılım
23 Kasım 2007
Mesajlar
245
Excel Vers. ve Dili
2003
Dim stDocName As String

stDocName = "ekran"
DoCmd.OutputTo acReport, stDocName , acFormatXLS

burda raporu xls olarak kaydedilecek yeri soruyor

benim yapmak istediğim benim verdiğim dosya adı ve belirttiğim yere direk kaydedilmesi...
 
Katılım
25 Aralık 2005
Mesajlar
4,160
Excel Vers. ve Dili
MS Office 2010 Pro Türkçe
Sayın pcman,

Başka çözüm yolu da olabilir ama ben şöyle bir çözüm üretmiştim:

1. Aşağıdaki kodları bir modüle kopyalayıp modülü kaydedin. Bu kodlar herhangi bir dosyanın bilgisayarımızda olup olmadığını kontrol ediyor.

Kod:
'***************** Code Start ***************
'This code was originally written by Dev Ashish.
'It is not to be altered or distributed,
'except as part of an application.
'You are free to use it in any application,
'provided the copyright notice is left unchanged.
'
'Code Courtesy of
'Dev Ashish
'
Function fReturnFilePath(strFileName As String, _
    strDrive As String) As String
Dim varItm As Variant
Dim strFiles As String
Dim strTmp As String
    
    If InStr(strFileName, ".") = 0 Then
        MsgBox "Sorry!! Need the complete name", vbCritical
        Exit Function
    End If
    
    strFiles = ""
    With Application.FileSearch
        .NewSearch
        .LookIn = strDrive
        .SearchSubFolders = True
        .Filename = strFileName
        .MatchTextExactly = True
        .FileType = msoFileTypeAllFiles
        If .Execute > 0 Then
            For Each varItm In .FoundFiles
                strTmp = fGetFileName(varItm)
                If strFileName = strTmp Then
                    fReturnFilePath = varItm
                    Exit Function
                End If
            Next varItm
        End If
    End With
End Function

Private Function fGetFileName(strFullPath) As String
Dim intPos As Integer, intLen As Integer
    intLen = Len(strFullPath)
    If intLen Then
        For intPos = intLen To 1 Step -1
            'Find the last \
            If Mid$(strFullPath, intPos, 1) = "\" Then
                fGetFileName = Mid$(strFullPath, intPos + 1)
                Exit Function
            End If
        Next intPos
    End If
End Function
'******************** Code End **************************
2. Raporu dışarıya çıkaracak forma şu kodları yazmanız gerekiyor:

Kod:
Set xlApp = CreateObject("Excel.Application")
    tarih1 = Format(Me.Tarih, "mmmm" & "_yyyy")
      ' ben burada her gün bir raporu o günkü tarihle dışarıya aktardım
  
    Name1 = CurrentProject.Path & "\form118\" & tarih1 & ".xls"
    strFileName = tarih1 & ".xls"
    strFilePath = fReturnFilePath(strFileName, CurrentProject.Path)
'Burada strFileName adlı dosyanın yolunu ve adını bulup getiriyor. Daha önce eklediğimiz modüldeki kodlarla
    If strFilePath <> Name1 Then
'Eğer ilgili excel dosyası bulunmamış ise oluşturulup kaydediliyor Tabi ben burada bir tanede excel kalıbı hazırladım ona uygun olarak kitap oluşturuluyor.
         xlApp.Workbooks.Add(CurrentProject.Path & "\Form118.xlt").SaveAs Name1
    End If
'İlgili oluşturulmuş veya halıhazırda bulunan excel kitabı açılıyor
xlApp.Workbooks.Open Name1
'Kitabın içinde   ilgili sayfa seçiliyor 
    xlApp.Sheets(Day(Me.Tarih)).Select
 
'Raporun yazılmaya başlandığı hücre sçiliyor
    xlApp.Range("G5").Select
Daha sonra raporun dayandığı sql cümlesi yazılıyor

Kod:
strSQL="SELECT.......
 
Set db = CurrentDb
    Set rst = db.OpenRecordset(strSQL)
        rst.MoveLast
        rst.MoveFirst 'Load all recs
        If rst.EOF Then rst.Close:
            For i = 0 To rst.RecordCount - 1
            
                xlApp.Cells(i + 5, 7) = rst(3).Value
            
            rst.MoveNext
        Next
     rst.Close
     Set db = Nothing

Gerçi burada DAO kodları kullandım, şimdi olsaydı ADO kullanırdım siz öyle kullanın böylece ilgili veriler excel hücrelerine yazılmış oluyor. Buradaki avantajınız, excel kalıbınızı sonuçta görmek istediğiniz şekilde formatlayıp, ilgili bilgileri içine atabilmeniz.

Bence güzel bir aktarma. Biraz deneme yanılma ile başarabileceğinizi umarım.


İyi çalışmalar
 
Katılım
23 Kasım 2007
Mesajlar
245
Excel Vers. ve Dili
2003
Ben Kodlarla Bo&#287;u&#351;uyorum ama &#350;u kodlar&#305; bir &#246;rne&#287;e koysan&#305;z dualar&#305;mla cennete gidersiniz...
 
Katılım
25 Aralık 2005
Mesajlar
4,160
Excel Vers. ve Dili
MS Office 2010 Pro Türkçe
Sayın pcman,

Siz benim ne anlatmak istediğimi anlamadınız. Siz olduğu gibi eklediğim kodları kopyalayıp yapıştırdınız. Elbette hata üretecek.

En iyisi siz kendi uygulamanızı ekleyin üstünde çalışalım daha verimli olacak çalışmamız.

İyi çalışmalar
 
Katılım
23 Kasım 2007
Mesajlar
245
Excel Vers. ve Dili
2003
Sn Madal&#305; ilginiz i&#231;in te&#351;ekk&#252;r ederim ama sql ile &#231;al&#305;&#351;an 40 mb &#231;al&#305;&#351;mayi nas&#305;l g&#246;ndereyim inan&#305;n g&#246;nderdi&#287;im &#246;rne&#287;in &#231;al&#305;&#351;mas&#305; sorunumu &#231;&#246;z&#252;cek...
 

beab05

Özel Üye
Katılım
19 Mart 2007
Mesajlar
1,418
Excel Vers. ve Dili
Office 2013
Merhaba;

Kod:
DoCmd.OutputTo acOutputTable, "Tablo1", acFormatxls, "C:\Documents and Settings\All Users\Desktop\" & "deneme.xls", True, ""
Sizin &#246;rnekteki tabloyu excel'e &#231;evirir ve masa&#252;st&#252;ne aktar&#305;r...
 
Son düzenleme:

assenucler

Altın Üye
Katılım
19 Ağustos 2004
Mesajlar
3,552
Excel Vers. ve Dili
Ofis 365 TR 64 Windows 11 Home Single Language x64 TR
Altın Üyelik Bitiş Tarihi
29-05-2025
Bir rica;

Sn. beab05 hocam;

Günaydın. Kodunuz benim de işime yarayacak. Ancak, bu kodu nasıl, nereye bağlayarak kullanacağımı çözemedim.

Bilgisizliğimi mazur görün.

Sevgi ve saygılar.
 

beab05

Özel Üye
Katılım
19 Mart 2007
Mesajlar
1,418
Excel Vers. ve Dili
Office 2013
Merhaba;

Hehangi bir d&#252;&#287;menein click koduna koyabilirsiniz, orda dikkat etmeniz gereken tablo ya da sorgu ismini de&#287;i&#351;tirmeniz sadece.. Sorgu olursa "acOutputQuery" yapman&#305;z gerekli..
Sondaki "true", false yaparsan&#305;z &#231;evirmeden sonra excel a&#231;&#305;lmaz..
 
Katılım
23 Kasım 2007
Mesajlar
245
Excel Vers. ve Dili
2003
Formatlar

Kod:
acFormatASP 
acFormatDAP 
acFormatHTML 
acFormatIIS 
acFormatRTF 
acFormatSNP 
acFormatTXT 
acFormatXLS
Bunlar Bildiğim formatlar

Pdf çevirmek için ne yapmalıyım
 
Üst