Selamlar herkese
yapmış olduğum bir sorguyu kod ile excel olarak almak istiyorum
DoCmd.TransferSpreadsheet acExport, acSpreadsheetTypeExcel9, "sorgugmrapor", "C:\Users\Yunus\Desktop\rapor.xlsx", True
bu kodu yazdım ve Excel dosyasını masa üstüne kaydediyorum fakat açmak istediğimde hata veriyor. yardımcı olabilirmsiniz
sorgunun excel olarak alınması
Yazdığınız kod xlsx uzantısını desteklemiyor. Koddaki rapor.xlsx kısmını rapor.xls olarak değiştirin veya aşağıdaki kodu kullanın.
DoCmd.OutputTo acOutputQuery, "sorgugmrapor", "ExcelWorkbook(*.xlsx)", "C:\Users\Yunus\Desktop\rapor.xlsx", False, "", , acExportQualityPrint
Teşekkür ederim işe yaradı
sayın koruyucu,
sadece bilgilendirme amacı ile,aşağıdaki açıklamanın yapılması uygun görülmüştür.
1)
DoCmd.TransferSpreadsheet acExport komutunun kullanımı üzerine;
bu komut ile,uygulamada mevcut hazırlanmış bir raporu direkt olarak Excel dosyasına dönüştürülememektedir.sadece,Tablo ya da Sorgu (ya da,raporun kaynağını oluşturan sorguyu seçmek sureti ile de geçerli olabilir) olarak işlem yapabilirsiniz.çünkü;
KULLANIM KALIBI:
kodlar ve aşağıda bağlantısı yazılı
DoCmd.TransferSpreadsheet Method (Access)
ilgili açıklama konusundan da üzerinden de anlaşılacağı üzere,sadece;Tablo ya da Sorgu kullanılmak sureti ile geçerli olmaktadır.
dolayısı ile de,bu kodu,ancak;rapora kaynak oluşturan sorguyu seçmek sureti ile kullanabilirsiniz.
2)
bir diğer husus ise,
bu komut ile direkt olarak ".XLSX" uzantılı olacak şekilde kullandığınız Ofis sürümünüze göre geçerli olan sürüm tipi acSpreadsheetTypeExcel9 değeri üzerinden aktarım yapamazsınız.
çünkü;".XLSX" uzantısı,sadece XML sürüm tipi (SpreadsheetType) için geçerli olarak kullanılabilir.zaten,yazdığınız sürüm tipi ile birlikte ".XLSX" uzantısını denediğinizde geçersizliğine vurgu yaparak hata iletisi (uyarı mesajı) gösterecektir.
fakat,".XLSX" olarak ille de kaydetmek istiyorsanız eğer,o zaman;
veyahut da,
olarak kullanmayı deneyiniz.bilginize...iyi çalışmalar,saygılar.
sadece bilgilendirme amacı ile,aşağıdaki açıklamanın yapılması uygun görülmüştür.
1)
DoCmd.TransferSpreadsheet acExport komutunun kullanımı üzerine;
bu komut ile,uygulamada mevcut hazırlanmış bir raporu direkt olarak Excel dosyasına dönüştürülememektedir.sadece,Tablo ya da Sorgu (ya da,raporun kaynağını oluşturan sorguyu seçmek sureti ile de geçerli olabilir) olarak işlem yapabilirsiniz.çünkü;
KULLANIM KALIBI:
DoCmd.TransferSpreadsheet(TransferType, SpreadsheetType, TableName, FileName, HasFieldNames, Range, UseOA)
kodlar ve aşağıda bağlantısı yazılı
DoCmd.TransferSpreadsheet Method (Access)
ilgili açıklama konusundan da üzerinden de anlaşılacağı üzere,sadece;Tablo ya da Sorgu kullanılmak sureti ile geçerli olmaktadır.
dolayısı ile de,bu kodu,ancak;rapora kaynak oluşturan sorguyu seçmek sureti ile kullanabilirsiniz.
2)
bir diğer husus ise,
bu komut ile direkt olarak ".XLSX" uzantılı olacak şekilde kullandığınız Ofis sürümünüze göre geçerli olan sürüm tipi acSpreadsheetTypeExcel9 değeri üzerinden aktarım yapamazsınız.
çünkü;".XLSX" uzantısı,sadece XML sürüm tipi (SpreadsheetType) için geçerli olarak kullanılabilir.zaten,yazdığınız sürüm tipi ile birlikte ".XLSX" uzantısını denediğinizde geçersizliğine vurgu yaparak hata iletisi (uyarı mesajı) gösterecektir.
fakat,".XLSX" olarak ille de kaydetmek istiyorsanız eğer,o zaman;
DoCmd.TransferSpreadsheet acExport, 10, "sorgugmrapor", "C:\Users\Yunus\Desktop\rapor.xlsx", True
veyahut da,
DoCmd.TransferSpreadsheet acExport, acSpreadsheetTypeExcel12Xml, "sorgugmrapor", "C:\Users\Yunus\Desktop\rapor.xlsx", True
olarak kullanmayı deneyiniz.bilginize...iyi çalışmalar,saygılar.
Konuyu Okuyanlar: 1 Ziyaretçi