Newsgroup: it.comp.appl.access
Titolo: esportare tabella in excel

ho creato un codice che mi esporta dei dati in excel da una query in
access ma nel campi null mi ha errore e termina esportazione come posso
fargli esportare anche i campi nulli? non posso mettere un if che
controlli tutti i capi xche sono molti... vi porto una parte del codice
Set cdb = CurrentDb
    'nella variabile app di tipo stringa salvo il percorso dove è
memorizzato nel mio pc l'EXCEL.EXE
    app$ = "C:\Programmi\Microsoft Office\Office11\EXCEL.EXE"
    'nella variabile file di tipo stringa salvo il percorso del foglio
Excel dal quale prenderò e scriverò i dati
    file$ = CurrentProject.Path & "\test.xls"
    'file$ =
"
http://www.studiobibliograficometa.it/export_to_excel.php
"
    a$ = CurDir
    'lancia in esecuzione il file Excel
    Shell app$, 6
    'apre il canale di comunicazione con il file Excel
    chan = DDEInitiate("Excel", "System")
    'se utilizzo questa istruzione per inviare a Microsoft Excel il
comando nuovo foglio Access funge da client,
    'mentre Excel da applicazione server
    DDEExecute chan, "[open(" + Chr$(34) + file$ + Chr$(34) + ")]"
    'chiude il canale
    DDETerminate chan
    chan = DDEInitiate("Excel", file$)
    Set rcs = cdb.OpenRecordset(" SELECT * FROM [tot ing eur]")
    'parte dal primo record
    flag = 0
    'ciclo per il controllo del mese
    Do
    If flag = 0 Then
     If rcs!espr2 = Cornice86 Then
     'MS eur
     DDEPoke chan, "r11c10", rcs!sommaDi1
     DDEPoke chan, "r11c11", rcs!sommaDi2
     DDEPoke chan, "r11c12", rcs!sommaDi3
     DDEPoke chan, "r11c13", rcs!sommaDi4
     'MT eur
     DDEPoke chan, "r11c16", rcs!sommaDi11
     DDEPoke chan, "r11c17", rcs!sommaDi21
     DDEPoke chan, "r11c18", rcs!sommaDi31
     DDEPoke chan, "r11c19", rcs!sommaDi41
     'AP eur
     DDEPoke chan, "r11c4", rcs!sommaDi15
     DDEPoke chan, "r11c5", rcs!sommaDi25
     DDEPoke chan, "r11c6", rcs!sommaDi35
     DDEPoke chan, "r11c7", rcs!sommaDi45
     'MS ing
     DDEPoke chan, "r5c10", rcs!sommaDi13
     DDEPoke chan, "r5c11", rcs!sommaDi23
     DDEPoke chan, "r5c12", rcs!sommaDi33
     DDEPoke chan, "r5c13", rcs!sommaDi43
     'MT ing
     DDEPoke chan, "r5c16", rcs!sommaDi14
     DDEPoke chan, "r5c17", rcs!sommaDi24
     DDEPoke chan, "r5c18", rcs!sommaDi34
     DDEPoke chan, "r5c19", rcs!sommaDi44
     'AP ing
     DDEPoke chan, "r5c4", rcs!sommaDi12
     DDEPoke chan, "r5c5", rcs!sommaDi22
     DDEPoke chan, "r5c6", rcs!sommaDi32
     DDEPoke chan, "r5c7", rcs!sommaDi42
     End If
    End If
    rcs.MoveNext
    Loop Until rcs.EOF
    'salvo il file Excel
    DDEExecute chan, "[save()]"
    'chiude il canale
    DDETerminate chan
    Set cdb = Nothing
    rcs.Close
    MsgBox "Importazione avvenuta con successo!"
    Exit Sub

 ha scritto nel messaggio news:1126000259.9...@g44g2000cwa.googlegroups.com...
ho creato un codice che mi esporta dei dati in excel da una query in
access ma nel campi null mi ha errore e termina esportazione come posso
fargli esportare anche i campi nulli? non posso mettere un if che
controlli tutti i capi xche sono molti... vi porto una parte del codice
--- omissis ---
(curiosità)
Perché utilizzi il DDE?
Excel legge direttamente query di access (menù: Dati - Importa dati esterni - Nuova query su database), salvando anche la query 
(creando quindi una "dinamicità" dei dati) nel foglio; così facendo, ogni volta che apri il foglio ti viene richiesto se aggiornare 
i dati o no...
Ciao.
-- 
Sergio MAZZA 

perchè devo esportare i dati in un file excel particolare e devo fare
in quella maniera li...

 ha scritto nel messaggio news:1126001847.2...@z14g2000cwz.googlegroups.com...
perchè devo esportare i dati in un file excel particolare e devo fare
in quella maniera li...
[risposta]
Il metodo di esportazione non pregiudica l'integrità dei dati scritti in excel; hai a disposizione almeno tre possibilità per 
esportare i dati da access ad excel:
- utilizzando il metodo TransferSpreadsheet (vedi help);
- utilizzando OLE (vedi esempi su 
www.sitocomune.com
, e 
http://www.donkarl.com/it/CISA/CISA1.htm
;
- leggere direttamente da Excel i dati come già suggerito;
e per ultimo, non per importanza ma perché non permette un controllo totale dell'applicazione server, il DDE.
Comunque a parte tutto (scusa se ho divagato), puoi utilizzare la funzione NZ (vedi help) per sostituire un valore Null con un altro 
valore (stringa o numero)...
Ciao.
-- 
Sergio MAZZA