Newsgroup: it.comp.appl.access
Titolo: Access 97: Output su file Rtf.

Ciao a tutti,
ho una tabella con questi campi:
Cognome, Nome, Data di nascita, Luogo di nascita, Paternità, Sesso.
Premetto che non conosco molto bene VB for Appl. ma ho necessità di creare 
una funzione (Routine evento), attivabile con un pulsante "Output come file 
Rtf" in un menu, che crei un file rtf, che io chiamo prova.rtf, e che i dati 
contenuti nei campi vengano messi in una singola riga (proprio come un 
record, però nel file rtf), ma distanti l'uno dall'altro esattamente 20 
caratteri. Questo per evitare di dover intervenire manualmente usando la 
barra spaziatrice e perdere un sacco di tempo nel caso io abbia molti dati 
da gestire. Ne ho bisogno nell'ambito del lavoro.
Un esempio: un elenco con 300 nominativi.
cognome (20 caratteri)nome (20 caratteri) ecc.. per i dati degli altri campi 
per tutti i 300 nominativi.
Grazie in anticipo per l'aiuto che mi date.

 ha scritto nel messaggio
news:ZBNie.105593$IN.17...@twister2.libero.it...

Apro access, chiamo la guida in linea e ci scrivo dentro "esportare dati in
word"
Nota le ultime due righe.
SunRex
Interscambiare i dati di Microsoft Access con Microsoft Word
Esistono quattro modi per utilizzare i dati di Microsoft Access con
Microsoft Word:
· Se si sta utilizzando Microsoft Word versione 7.0/95 o successiva, è
possibile utilizzare l'Autocomposizione Stampa unione di MS Word per creare
un documento di Stampa unione in Word utilizzando un collegamento con i dati
di Microsoft Access. Dopo aver definito tale collegamento, è possibile
aprire il documento in Microsoft Word in qualsiasi momento per stampare un
nuovo batch di lettere tipo o di etichette utilizzando i dati correnti di
Microsoft Access.
· Per qualsiasi versione di Microsoft Word, è possibile esportare i dati di
Microsoft Access in un file di origine dati di Stampa unione che può essere
utilizzato con la funzione Stampa unione di Word.
· È possibile salvare l'output di un foglio dati, di una maschera o di un
report come file di tipo Rich Text Format con estensione RTF. Un file di
tipo Rich Text Format conserva la formattazione, quali i caratteri e gli
stili, e può essere aperto in Microsoft Word e in altri programmi di
elaborazione testi o di desktop publishing di Windows.
· È possibile salvare l'output di un foglio di calcolo, di una maschera o di
un report come file di tipo Rich Text Format con estensione RTF e caricarlo
automaticamente in Microsoft Word.
Per saperne di più
  Unire i dati di Microsoft Access utilizzando l'Autocomposizione Stampa
unione di MS Word
 Esportare una tabella o una query in un file origine dati di Stampa unione
di Microsoft Word
 Salvare l'output di un foglio dati, di una maschera o di un report come
file Rich Text Format
 Salvare l'output di un foglio dati, di una maschera o di un report come
file Rich Text Format e aprirlo automaticamente con Microsoft Word

 ha scritto nel messaggio 
news:quUie.1407312$35.52...@news4.tin.it...

Grazie Sunrex per il tuo suggerimento, ma purtroppo nessuna di queste 
funzioni, che tra l'altro io avevo già utilizzato per esportare i dati della 
tabella che mi interessa, risolve il mio problema. Pensavo fosse possibile 
scrivere una function che crea un file .rtf contenente i dati dei singoli 
record, spaziati ognuno, obbligatoriamente, per come mi sono stati 
richiesti. Fare questo lavoro manualmente richiederebbe un sacco di tempo, 
oltre che una estrema precisione, col rischio di vedermi scartare i record 
con i dati che non rispettano tale formattazione.
A nulla è valso tentare di formattare i dati utilizzando punti di 
tabulazione, in presenza di doppi nomi e doppi nomi per cognome, word non 
rispetta le tabulazioni per mancanza di spazio sulla riga orizzontale. Sarò 
più preciso; il destinatario del lavoro mi ha inviato le istruzioni, quindi 
il record con i campi è questo:
Il file delle richieste deve essere in formato ASCII ed avere il seguente 
tracciato:
i campi sono a lunghezza fissa e pertanto non necessitano di separatori. la 
sequenza è:
cognome..................... nome............................luogo di 
nascita...............data di nascita...............paternità 
...............sesso
cognome: occupa 35 caratteri alfanumerici;
nome: occupa 35 caratteri alfanumerici (da 36 a 70);
luogo di nascita: occupa 35 caratteri alfanumerici (da 71 a 105);
data di nascita: occupa 10 caratteri alfanumerici (da 106 a 115);
Paternità: occupa 24 caratteri alfanumerici (da 116 a 139);
Sesso: occupa 1 carattere alfanumerico (a 140)
Sono ancora nelle tue mani, o di qualcun altro che magari mi può aiutare, 
altrimenti il destinatario mi chiederà di stampare su carta i dati dei 
singoli campi e così avrò le risposte con un ritardo notevole. Grazie per 
l'aiuto. 

 ha scritto nel messaggio
news:zV5je.16984$795.5...@twister1.libero.it...

Prova un po a vedere su google gruppi
http://groups.google.it/group/it.comp.appl.access?hl=it
il 3d intitolato "carattere spaziatura"
SunRex

 - Trova messaggi di 
questo autore
            Data: Thu, 6 Mar 2003 19:30:14 +0100
            Locale: Gio 6 Mar 2003 19:30
            Oggetto: Re: Spaziatura Caratteri
            Rispondi all'autore | Inoltra | Stampa | Messaggio singolo | 
Mostra originale | Segnala illeciti
      devi scrivere del codice che all'uscita dal controllo ti renda il 
testo x
      come desideri.
      potresti fare una cosa del genere:
      Public Function TestoSpa(testo As String, numspazi As Integer) As 
String
      Dim Lung As Integer
      Dim i As Integer
      Lung = Len(testo)
      TestoSpa = Left(testo, 1) & Space(numspazi)
      For i = 2 To Lung
          TestoSpa = TestoSpa & Mid(testo, i, 1) & Space(numspazi)
      Next
      MsgBox TestoSpa
      End Function
      Questo funziona e ti fa inserire quanti spazi desideri.
      Ciao.
      ---------------------------------------------------------------------------------------------------
      Di seguito ti descrivo il mio problema:
      pensavo fosse possibile scrivere una function, attivabile con un 
pulsante in un menu, che apre la tabella in questione (miatabella), che 
legge i dati dei campi e mi restituisce un file ASCII, (un file TXT) 
contenente i dati dei singoli record della miatabella, spaziati ognuno 
obbligatoriamente, per come mi sono stati richiesti. Fare questo lavoro 
manualmente richiederebbe un sacco di tempo,
      oltre che una estrema precisione, col rischio di vedermi scartare i 
record con i dati che non rispettano tale formattazione.
      A nulla è valso tentare di formattare i dati utilizzando punti di 
tabulazione, perchè in presenza di doppi nomi e doppi nomi per cognome, word 
non rispetta le tabulazioni per mancanza di spazio sulla riga orizzontale.
      Ora sarò più preciso; il destinatario del lavoro mi ha inviato le 
istruzioni, quindi il record con i campi è questo:
      Il file delle richieste deve essere in formato ASCII ed avere il 
seguente
      tracciato:
      i campi sono a lunghezza fissa e pertanto non necessitano di 
separatori. la
      sequenza è:
      cognome..................... nome............................luogo di 
nascita...............data di nascita...paternità.............sesso.
      cognome: occupa 35 caratteri alfanumerici;
      nome: occupa 35 caratteri alfanumerici (da 36 a 70);
      luogo di nascita: occupa 35 caratteri alfanumerici (da 71 a 105);
      data di nascita: occupa 10 caratteri alfanumerici (da 106 a 115);
      Paternità: occupa 24 caratteri alfanumerici (da 116 a 139);
      Sesso: occupa 1 carattere alfanumerico (a 140)
      Mi sono chiesto se è possibile adattare con qualche modifica, il 
codice sopra riportato per il caso della casella di testo, che restituisce 
una parola con uno spazio fra una lettera e l'altra, ma a me non serve 
spaziare una parola, bensì mi serve creare un tracciato, un record con una 
sequenza di dati con una spaziatura ben precisa tra un dato e l'altro perchè 
ho 6 campi in tabella, ognuno con un dato da gestire.
      Tu o qualcun altro del newgroup siete in grado di intevenire su questo 
caso ? Sono nelle tue/vs. mani, altrimenti il destinatario mi chiederà di 
stampare su carta i dati dei singoli campi e così avrò le risposte con un 
ritardo notevole, e purtroppo io ho anche molto fretta a causa di una 
scadenza ben precisa. Grazie per l'aiuto che mi potete dare.
      Giuseppe.