Condividi:        

Inserire Dati da Excel a TXT e Viceversa

Vuoi potenziare i tuoi documenti Word? Non sai come si fa una macro in Excel? Devi creare una presentazione in PowerPoint?
Oppure sei passato a OpenOffice e non sei sicuro di come lavorare al meglio?

Moderatori: Anthony47, Flash30005

Inserire Dati da Excel a TXT e Viceversa

Postdi A.Maurizio » 16/11/16 16:50

Ciao a Tutti , il mio Problema e questo :
Su di un Foglio di Excel , non vorrei determinare quale , ma semplicemente usando un "ActiveCell" Ho inserito dei dati inere3nte ad un presunto Database , Per qui con le voci classiche come ("Id" ; "Cognome" ; "Nome" ; "Indirizzo") ecc....!
Ahora il Problema Vero e proprio e questo : Io Vorrei tramite il VBA creare 2 Funzioni una che Stampi i dati inseriti nel Foglio su di un Formato TXT.
E L'altro che mi dia la possibilità di prelevare i dati scritti nella TXT e li trasporti Sul Foglio partendo da una determinata cella Selezionata sul Momento.
Ahora io di mio ho provato a buttare giù una cosa di questo Genere solo che in questo Listato :

Codice: Seleziona tutto
Sub ApriFile()
On Error Resume Next
Dim percorso As String

percorso = "C:\Users\a.Maurizio\Desktop\prova.csv"
Open percorso For Input As #1

Nriga = 0
Do Until EOF(1)

Line Input #1, LineaFile
RigaF = Split(LineaFile, ",")

ActiveCell.Offset(Nriga, 0).Value = RigaF(2)
ActiveCell.Offset(Nriga, 1).Value = RigaF(1)
ActiveCell.Offset(Nriga, 2).Value = RigaF(0)


Nriga = Nriga + 1
Loop
Close #1
End Sub


Pur Funzionando a meravigli , trovo solo un difetto che e questo : Se il lo prova la prima volta , esso mi Trasporta i dati da TXT ad Excel .
Però sé per errore richiamo una seconda volta tale Procedura , essa mi cancella i dati scritti nella TXT e non capisco dove sto sbagliando.
Mentre al Contrario Ho creato questo codice :
Codice: Seleziona tutto
 
Sub ScriviFile()
On Error Resume Next
Dim percorso As String
Dim CellaD As String
Dim UltimaC As Long
Dim UltimaR As Long

percorso = "C:\Users\a.Maurizio\Desktop\prova2.txt"
Open percorso For Output As #2
CellData = “”

UltimaR = Cells(1, “A”).End(xlDown).Row
UltimaC = Cells(1, “A”).End(xlToRight).Column



For I = 1 To UltimaR
    For j = 1 To UltimaC
        If j = UltimaC Then
CellD = CellD + Trim(ActiveCell(I, j).Value)
    Else
CellD = CellD + Trim(ActiveCell(I, j).Value) + ", "
        End If
    Next j

    Write #2, CellD
    CellD = “”
Next I
Close #2

MsgBox "Fatto ", vbExclamation, "Attenzione"
End Sub


In questo caso mi crea il File TXT li dove voglio Io , Però e Sempre Vuoto , e anche qui non capisco il perché.
Voi Gentilmente riuscireste a darmi una mano in merito ,
Sinceri Saluti e grazie sin da ora per tutto l'aiuto che riuscirete a darmi in merito . A.Maurizio
A.Maurizio
Utente Senior
 
Post: 116
Iscritto il: 02/08/13 15:39

Sponsor
 

Re: Inserire Dati da Excel a TXT e Viceversa

Postdi patel » 16/11/16 20:10

per quanto riguarda la scrittura l'errore sta nella riga
Codice: Seleziona tutto
CellD = CellD + Trim(ActiveCell(I, j).Value)

deve essere
Codice: Seleziona tutto
CellD = CellD + Trim(Cells(I, j).Value)

poi io utilizzerei print invece di write
patel
Utente Senior
 
Post: 309
Iscritto il: 24/04/12 16:03

Re: Inserire Dati da Excel a TXT e Viceversa

Postdi A.Maurizio » 16/11/16 23:34

Grazie patel del tuo Aiuto ma continua a Darmi solo il File txt ma quando vado ad aprire il tutto , al suo interno non risultano nessun dato.
Grazie del Pensiero ciao e Buona Serata
A.Maurizio
Utente Senior
 
Post: 116
Iscritto il: 02/08/13 15:39

Re: Inserire Dati da Excel a TXT e Viceversa

Postdi A.Maurizio » 17/11/16 00:05

Ciao patel e anche tutti gli altri , vi scrivo in quanto proprio adesso sono riuscito a risolvere questo mio Problema era più facile di quanto pensassi.
In quanto avevo solo invertito le Fasi di Scrittura , e alla fine lo Risolta in questo modo :

Codice: Seleziona tutto
 
Sub ScriviFile()
On Error Resume Next
Dim percorso As String
Dim CellaD As String
Dim UltimaC As Long
Dim UltimaR As Long

UltimaR = Cells(1, "A").End(xlDown).Row
UltimaC = Cells(1, "A").End(xlToRight).Column

    percorso = "C:\Users\a.Maurizio\Desktop\prova2.txt"
    CellData = ""

Open percorso For Output As #2

For i = 1 To UltimaR
    For j = 1 To UltimaC
        If j = UltimaC Then
        CellD = CellD + Trim(ActiveCell(i, j).Value)
    Else
        CellD = CellD + Trim(ActiveCell(i, j).Value) + ","
        End If
    Next j

    Write #2, CellD
    CellD = ""
Next i

Close #2

MsgBox "Fatto ", vbExclamation, "Attenzione"
End Sub


E la Differenza Sta nel Fatto che ho Semplicemente Invertito il Ruolo di Cancellazioe Dell'indirizzo ; Prima di raggiungere (Open) ecc...!
Tutto qui Ora Funziona Anche Questo a Meraviglia.
Grazie comunque di tutto e Soprattutto per Avervi Disturbato per cosi poco ; Saluti da A.Maurizio

(p.s) Dimenticavo di Chiedervi visto che ci Sono : Se per caso Conoscete il Sistema Per Cambiare la mia Password e il mio Indirizzo di Posta Elettronica All'interno di Questo Forum.
In Quanto e Tre Volte che invio Email alla Direzione di PC-Facile ma continuano a non mandarmi nessuna Risposta.
Grazie anche in Questo caso per i Vostri Suggerimenti
A.Maurizio
Utente Senior
 
Post: 116
Iscritto il: 02/08/13 15:39

Re: Inserire Dati da Excel a TXT e Viceversa

Postdi Anthony47 » 17/11/16 13:17

Per cambiare la password puoi usare la procedura di "Password dimenticata", che puoi attivare dal pannello di Login; questo pero' prevede l'invio di una mail all'indirizzo con cui ti sei registrato.
Ma se scrivi sul forum e' perche' la password la conosci, quindi puoi usare la procedura disponibile nel tuo " Pannello di Controllo Utente" (trovi il link, dopo l'accesso al forum, in alto a sx sopra l'elenco delle discussioni presenti nelle singole Sezioni); tab Profilo, voce Modifica account; in questa posizione puoi indicare la nuova mail e puoi anche inserire una nuova Password.

Ciao
Avatar utente
Anthony47
Moderatore
 
Post: 19480
Iscritto il: 21/03/06 16:03
Località: Ivrea

Re: Inserire Dati da Excel a TXT e Viceversa

Postdi A.Maurizio » 17/11/16 19:04

Grazie Anthony come sempre sei un Grande , Finalmente ho risolto anche questo Problema, non solo perché non potevo più comunicare con voi , ma anche perché avevo ricevuto una password di questo link per qui sé per caso avessi dovuto cancellare qualcosa , non sarei più riuscito ad entrare con i miei dati personali.
E poi diciamocela tutta Per me e sempre un Piacere oltre che un onore Dialogare sulla programmazione con persone come voi .
Grazie ancora di tutto Sinceri Saluti da A.Maurizio
A.Maurizio
Utente Senior
 
Post: 116
Iscritto il: 02/08/13 15:39


Torna a Applicazioni Office Windows


Topic correlati a "Inserire Dati da Excel a TXT e Viceversa":


Chi c’è in linea

Visitano il forum: Marius44 e 32 ospiti