Condividi:        

application get open file

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

application get open file

Postdi maxkoala » 14/02/13 22:44

Salve , un nuovo questito..! , ho abbinato ad un pulsante, una macro che mi permette di aprire da una directory ben precisa ,un file txo (generico) , una volta cliccato fa un copia incolla di tutto il file sulla prima cella in un'altro foglio excel . il problema e che non riesco alla fine di questa operazione di chiudere tutte le finestre che sono rimaste aperte..! la macro è questa:
Sub macro1()
'
' macro1 Macro
'

'
ChDir "C:\Users\Massimo\Desktop\koala"
myFILE = Application.GetOpenFilename("Test Files,*.Tx0")
Workbooks.OpenText Filename:=myFILE, _
Origin:=xlMSDOS, StartRow:=1, DataType:=xlDelimited, TextQualifier:= _
xlDoubleQuote, ConsecutiveDelimiter:=False, Tab:=True, Semicolon:=False, _
Comma:=True, Space:=False, Other:=False, FieldInfo:=Array(Array(1, 1), _
Array(2, 1), Array(3, 1), Array(4, 1), Array(5, 1)), TrailingMinusNumbers:=True
Cells.Select
Range("B1").Activate
Selection.Copy
Windows("AAA3.xlsm").Activate
Sheets("Foglio2").Select
ActiveSheet.Paste
Sheets("Foglio1").Select
Windows("miofoglio.txo").Activate

End Sub


Grazie in anticipo
maxkoala
Utente Junior
 
Post: 31
Iscritto il: 09/02/13 18:35

Sponsor
 

Re: application get open file

Postdi Flash30005 » 15/02/13 00:03

Quali finestre vorresti chiudere?
Flash
Win10 + Office 2010 Ita
"Fotografica" al servizio dell'immagine
Avatar utente
Flash30005
Moderatore
 
Post: 8517
Iscritto il: 27/09/07 11:44
Località: Roma +o-

Re: application get open file

Postdi Anthony47 » 15/02/13 00:28

...e in quale file e' contenuta la macro?
Avatar utente
Anthony47
Moderatore
 
Post: 19196
Iscritto il: 21/03/06 16:03
Località: Ivrea

Re: application get open file

Postdi maxkoala » 15/02/13 13:03

quella del file Tx0 (generico) che vorrei copiare , e quella della directory...!

la macro è contenuta nel : foglio 1 del file AAA3.xlsm
maxkoala
Utente Junior
 
Post: 31
Iscritto il: 09/02/13 18:35

Re: application get open file

Postdi maxkoala » 15/02/13 13:05

scusa ho sbagliato : nel file AAA3.xslm
maxkoala
Utente Junior
 
Post: 31
Iscritto il: 09/02/13 18:35

Re: application get open file

Postdi Anthony47 » 16/02/13 03:01

Scusa, ma con queste risposte sintetiche io non ho capito.
Comunque tieni presente che la sintassi di riferimento e'
Codice: Seleziona tutto
Workbooks("NomeFile.Ext").Close Savechanges:=True '(oppure False)

Se vuoi chiudere anche quello contenente la macro, lo potrai chiudere quando la macro e' praticamente terminata con l' istruzione
Codice: Seleziona tutto
ThisWorkbook.Close Savechanges:=True '(oppure False)

Ovviamente userai True o False a seconda di cosa vuoi ottenere...

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

Re: application get open file

Postdi maxkoala » 16/02/13 12:13

Ci riprovo..; la macro , si trova nel file AAA3.xlsm .La macro contiene la seguente istruzione : apri la directory (da me indicata ), scegli il file tx0 che desideri (è chiaro che sto decidendo che cosa aprire ..!cioè file tx0 con nomi diversi..!) apri il file txo e copia incolla tutto il suo contenuto ,nella cella A1 del foglio1 del file AA3.xlsm . la macro questo lo fa...! quello che vorrei che alla fine del ..copia incolla , il file tx0 estratto non rimanesse aperto sul desktop. E' possibile che l'istruzione finale di questa macro sia sbalgiata..! perchè ho provato ad inserire la tua informazione ma non sono riuscito ad eliminare " error run time 9 8 indice non incluso nell'intervallo) , e il file tx0 comunque non si chiude. Può essere che nel registrare la macro abbia omesso chiudi ( senza salvare) il file tx0..!? la macro sotto postata non continene l'ultima riga di quello postato inizialmente .

ChDir "C:\Users\Massimo\Desktop\koala"
myFILE = Application.GetOpenFilename("Test Files,*.Tx0")
Workbooks.OpenText Filename:=myFILE, _
Origin:=xlMSDOS, StartRow:=1, DataType:=xlDelimited, TextQualifier:= _
xlDoubleQuote, ConsecutiveDelimiter:=False, Tab:=True, Semicolon:=False, _
Comma:=True, Space:=False, Other:=False, FieldInfo:=Array(Array(1, 1), _
Array(2, 1), Array(3, 1), Array(4, 1), Array(5, 1)), TrailingMinusNumbers:=True
Cells.Select
Range("B1").Activate
Selection.Copy
Windows("AAA3.xlsm").Activate
Sheets("Foglio2").Select
ActiveSheet.Paste
Sheets("Foglio1").Select
maxkoala
Utente Junior
 
Post: 31
Iscritto il: 09/02/13 18:35

Re: application get open file

Postdi Anthony47 » 16/02/13 13:38

Ragazzi, siamo su un forum di excel, non di fenomeni paranormali.
Se non scrivi che cosa hai fatto e come l' hai fatto io arrivo solo a immaginare che hai sbagliato qualcosa...
Forse su www.lostregone.it potrebbero essere piu' precisi; forse.

Ti aspetto con qualche dettaglio "in più"

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

Re: application get open file

Postdi maxkoala » 16/02/13 14:17

invertiamo il problema: ho diversi file , di tipo tx0 in un cartella del pc ; vorrei trasferire tutto il contenuto di ogni singolo file in un foglio excel; vorrei ripetere questa operazione di copia incolla tante volte per ciascuno dei file ( tx0) presenti nella cartella.ogni volta che verrà eseguito il commando , il contenuto nel foglio excel è sostituto dal contenuto di un nuovo .Domanda si riesce a costruire una macro che faccia questo lavoro...!!!!???? credo non sia da paranormali nè l'idea nè il progetto...l'unico problema che io percepisco . ( allora sì.. che parliamo di stregoneria..) e che i file tx0 restino aperti sul desktop...nota : il lavoro si considera in automatico....quando non devo pensare poi a chiudere tutti i file rimasti aperti..!!!!
se cio è fattibile sapresti creare una macro a d 'hoc ..!?
maxkoala
Utente Junior
 
Post: 31
Iscritto il: 09/02/13 18:35

Re: application get open file

Postdi Flash30005 » 16/02/13 14:46

Si può avere un file .tx0 ?
Come server di invio file usa questo

ciao
Flash
Win10 + Office 2010 Ita
"Fotografica" al servizio dell'immagine
Avatar utente
Flash30005
Moderatore
 
Post: 8517
Iscritto il: 27/09/07 11:44
Località: Roma +o-

Re: application get open file

Postdi Anthony47 » 16/02/13 14:59

maxkoala ha scritto:perchè ho provato ad inserire la tua informazione ma non sono riuscito ad eliminare " error run time 9 8 indice non incluso nell'intervallo) , e il file tx0 comunque non si chiude.
E' da paranormali cercare di interpretare che cosa hai fatto se tu non lo scrivi (riferito a un tuo messaggio precedente)
Avatar utente
Anthony47
Moderatore
 
Post: 19196
Iscritto il: 21/03/06 16:03
Località: Ivrea

Re: application get open file

Postdi maxkoala » 17/02/13 22:24

scusa per il ritardo nel rispondere , ma ero fuori tutto il weekend , ti to inoltrato un file tipo tx0 ( che non ha niente di trascendentale , riporta i risultati analitici di una strumentazione ..! lo strumemto ha l'opzione di salvare i dati in questo formato )
per cui è evidente lo scopo di una macro...quella di riportare su excel tutti i dati ,possibilmente in automatico... tranne il fatto che dovendo aprire file tx0 ogni volta diversi ..devo chiedere alla macro di aprire la cartella ( dove sono salvati..) e scegliere chi importare.... forse propio il temine "apri/copia/incolla " può forviare anzi che usare "importa " file!?
maxkoala
Utente Junior
 
Post: 31
Iscritto il: 09/02/13 18:35

Re: application get open file

Postdi Flash30005 » 17/02/13 23:56

maxkoala ha scritto:ti to inoltrato un file tipo tx0


Dove? :roll:
Flash
Win10 + Office 2010 Ita
"Fotografica" al servizio dell'immagine
Avatar utente
Flash30005
Moderatore
 
Post: 8517
Iscritto il: 27/09/07 11:44
Località: Roma +o-

Re: application get open file

Postdi maxkoala » 18/02/13 08:26

credo di aver usato filedropper come da te indicato . ho eseguito l'upload ..! non mi ha chiesto nient'altro.!
maxkoala
Utente Junior
 
Post: 31
Iscritto il: 09/02/13 18:35

Re: application get open file

Postdi Flash30005 » 18/02/13 09:34

Dopo aver scelto il file da inviare e premuto l'apposito comando
il file viene caricato sul server che rilascia un indirizzo
Questo indirizzo va copiato e incollato nel post
(possibilmente usando il tag URL dell'editor)

Ciao
Flash
Win10 + Office 2010 Ita
"Fotografica" al servizio dell'immagine
Avatar utente
Flash30005
Moderatore
 
Post: 8517
Iscritto il: 27/09/07 11:44
Località: Roma +o-

Re: application get open file

Postdi maxkoala » 18/02/13 11:41

provo più tardi , non ho a disposizione in questo momento neanche 1 min.
maxkoala
Utente Junior
 
Post: 31
Iscritto il: 09/02/13 18:35

Re: application get open file

Postdi maxkoala » 18/02/13 13:54

maxkoala
Utente Junior
 
Post: 31
Iscritto il: 09/02/13 18:35

Re: application get open file

Postdi Flash30005 » 18/02/13 21:27

Devi aggiungere solo due righe di codice nella tua macro
Codice: Seleziona tutto
MyFile = Application.GetOpenFilename("Test Files,*.Tx0")  '<<<< esistente
MyFName = Mid(MyFile, InStrRev(MyFile, "\") + 1, Len(MyFile) - InStrRev(MyFile, "\"))  '<<<< aggiungi questa riga qui
'...
'...

alla fine prima dell'end sub inserisci questa riga codice
Codice: Seleziona tutto
Sheets("Foglio1").Select  '<<< esistente (ma a cosa serve?)
Workbooks(MyFName).Close  '<<< aggiungere
End Sub


ciao
Flash
Win10 + Office 2010 Ita
"Fotografica" al servizio dell'immagine
Avatar utente
Flash30005
Moderatore
 
Post: 8517
Iscritto il: 27/09/07 11:44
Località: Roma +o-

Re: application get open file

Postdi maxkoala » 18/02/13 22:15

Perfetto Flash..! ho inserito le due righe da te indicate, ed ho eliminato la seguente righa alla fine della macro :Sheets("Foglio1").Select ( che produceva un errore di debug..!). io l' ho inserito perchè alla fine del copia incolla ho la necessità di visualizzare il foglio1 ..là dove si trova il pulsante abbinato alla macro , e non il foglio2 dove sono incollate le info del file estratto..! come si può fare ?


ChDir "C:\Users\Massimo\Desktop\koala"
myFILE = Application.GetOpenFilename("Test Files,*.Tx0")
MyFName = Mid(MyFile, InStrRev(MyFile, "\") + 1, Len(MyFile)
Workbooks.OpenText Filename:=myFILE, _
Origin:=xlMSDOS, StartRow:=1, DataType:=xlDelimited, TextQualifier:= _
xlDoubleQuote, ConsecutiveDelimiter:=False, Tab:=True, Semicolon:=False, _
Comma:=True, Space:=False, Other:=False, FieldInfo:=Array(Array(1, 1), _
Array(2, 1), Array(3, 1), Array(4, 1), Array(5, 1)), TrailingMinusNumbers:=True
Cells.Select
Range("A1").Activate
Selection.Copy
Windows("AAA3.xlsm").Activate
Sheets("Foglio2").Select
ActiveSheet.Paste
Workbooks(MyFName).Close
End Sub

ciao e grazie a te..!





Sheets("Foglio1").Select
maxkoala
Utente Junior
 
Post: 31
Iscritto il: 09/02/13 18:35

Re: application get open file

Postdi Flash30005 » 18/02/13 23:49

Allora inseriscilo dopo la chiusura del file tx0
Codice: Seleziona tutto
Workbooks(MyFName).Close
Sheets("Foglio1").Select
End Sub


EDIT ore 23:56 - inserisco l'intera macro ottimizzata
Codice: Seleziona tutto
Sub CopiaTesto()
ChDir "C:\Users\Massimo\Desktop\koala"
MyFile = Application.GetOpenFilename("Test Files,*.Tx0")
MyFName = Mid(MyFile, InStrRev(MyFile, "\") + 1, Len(MyFile) - InStrRev(MyFile, "\"))
Workbooks.OpenText Filename:=MyFile, _
Origin:=xlMSDOS, StartRow:=1, DataType:=xlDelimited, TextQualifier:= _
xlDoubleQuote, ConsecutiveDelimiter:=False, Tab:=True, Semicolon:=False, _
Comma:=True, Space:=False, Other:=False, FieldInfo:=Array(Array(1, 1), _
Array(2, 1), Array(3, 1), Array(4, 1), Array(5, 1)), TrailingMinusNumbers:=True
Cells.Copy Destination:=Workbooks("Importa.xls").Sheets("Foglio2").Range("A1")
Workbooks(MyFName).Close
Sheets("Foglio1").Select
End Sub
Flash
Win10 + Office 2010 Ita
"Fotografica" al servizio dell'immagine
Avatar utente
Flash30005
Moderatore
 
Post: 8517
Iscritto il: 27/09/07 11:44
Località: Roma +o-

Prossimo

Torna a Applicazioni Office Windows


Topic correlati a "application get open file":


Chi c’è in linea

Visitano il forum: Nessuno e 35 ospiti