[Risolto]Macro raggruppa separatori di campo
-
- Messaggi: 142
- Iscritto il: domenica 10 maggio 2015, 18:17
- Località: Busto Arsizio (VA)
[Risolto]Macro raggruppa separatori di campo
Ciao a tutti,come da titolo vorrei sapere se esiste una macro per simulare l'operazione Dati->Testo a colonna->e flaggare sia spazio che raggruppa separatori di campo.
Allego file per prove.
Ringrazio tutti sin d'ora per l'aiuto
Allego file per prove.
Ringrazio tutti sin d'ora per l'aiuto
- Allegati
-
- prova raggruppa separatori di campo.ods
- (14.23 KiB) Scaricato 177 volte
Ultima modifica di XLUPOGRIGIOX il venerdì 16 settembre 2016, 22:31, modificato 1 volta in totale.
OpenOffice 4.1.1 su windows seven
Re: Macro raggruppa separatori di campo
Scusami, ma a me sembra, dal tuo esempio, che sia più opportuno separare a larghezza fissa. I dati originali sono salvati in un file di testo?
LibO:Versione: 6.2.8.2
Build ID: 1:6.2.8~rc2-0ubuntu0.16.04.1- 32-bit
-
Se risolvi:
1. Condividi la soluzione qui con noi
2. Metti [Risolto] al titolo del primo messaggio come spiegato qui
Build ID: 1:6.2.8~rc2-0ubuntu0.16.04.1- 32-bit
-
Se risolvi:
1. Condividi la soluzione qui con noi
2. Metti [Risolto] al titolo del primo messaggio come spiegato qui
-
- Messaggi: 142
- Iscritto il: domenica 10 maggio 2015, 18:17
- Località: Busto Arsizio (VA)
Re: Macro raggruppa separatori di campo
Ciao Unlucky,si in effetti con l'eseguibile pdftotxt esporto un pdf in txt e poi lo importo in calc,fatto ciò costruirò una macro per importare solo i dati che mi servono,ma essendoci troppe celle vuote in ogni riga tra una cella con un termine ed un'altra,provando manualmente raggruppa separatori di campo mi elimina le celle vuote e mi diventa più "lavorabile" come nel file che ho allegato
OpenOffice 4.1.1 su windows seven
Re: Macro raggruppa separatori di campo
Capito. Dalla macro presente nel file vedo che importi il file con il filtro, immagino per ottenere la prima tabella "com'è", forse basta modificare i flag di quel filtro e così con una sola macro fai tutto.
LibO:Versione: 6.2.8.2
Build ID: 1:6.2.8~rc2-0ubuntu0.16.04.1- 32-bit
-
Se risolvi:
1. Condividi la soluzione qui con noi
2. Metti [Risolto] al titolo del primo messaggio come spiegato qui
Build ID: 1:6.2.8~rc2-0ubuntu0.16.04.1- 32-bit
-
Se risolvi:
1. Condividi la soluzione qui con noi
2. Metti [Risolto] al titolo del primo messaggio come spiegato qui
-
- Messaggi: 142
- Iscritto il: domenica 10 maggio 2015, 18:17
- Località: Busto Arsizio (VA)
Re: Macro raggruppa separatori di campo
Certo,io purtroppo non so come impostare i filtri da macro.Proviamo,magari così si risolve tutto molto più velocemente
OpenOffice 4.1.1 su windows seven
Re: Macro raggruppa separatori di campo
Codice: Seleziona tutto
REM ***** BASIC *****
Sub import2_sample
Dim mFileProperties(1) As New com.sun.star.beans.PropertyValue
Dim sUrl As String
myarray()=ChooseFiles()
sUrl=myarray(0)
mFileProperties(0).Name = "FilterName"
mFileProperties(0).Value = "Text - txt - csv (StarCalc)"
mFileProperties(1).Name = "FilterFlags"
'mFileProperties(1).Value = "32/MRG,SYSTEM,1,1/1/1/1/1/1/1/1/1/1/1/1/1/1/1/1/1/1/1/1/1/1/1/1"
oDesktop = createUNOService("com.sun.star.frame.Desktop")
if sUrl="" then
exit sub
end if
oDocument = oDesktop.loadComponentFromURL(sUrl,_
"_blank",0,mFileProperties())
mFileProperties(1).Value = "FIX,,SYSTEM,1,0/1/5/1/19/1/28/1/73/1/85/9/92/1/104/1/116/1/127/1"
oDocument = oDesktop.loadComponentFromURL(sUrl,_
"_blank",0,mFileProperties())
End Sub
Function ChooseFiles()
Dim oDialog As Object
Dim s As String
oDialog = CreateUnoService("com.sun.star.ui.dialogs.FilePicker")
oDialog.setDisplayDirectory(GetWorkDir())
oDialog.setMultiSelectionMode(FALSE)
' Xray oDialog
If oDialog.Execute() = 1 Then
ChooseFiles= oDialog.getFiles()
End If
End Function
Codice: Seleziona tutto
'mFileProperties(1).Value = "32/MRG,SYSTEM,1,1/1/1/1/1/1/1/1/1/1/1/1/1/1/1/1/1/1/1/1/1/1/1/1"
SYSTEM sta per l'impostazioni di sistema per il separatore dei decimali, il primo 1 sta ad indicare che deve essere letto il txt dal primo rigo.
il secondo 1 e tutti i gli alterni stanno ad indicare la prima colonna del txt, intesa come carattere
gli 1 in mezzo stanno ad indicare il flag sulla colonna importata e indicano il formato standard.
Codice: Seleziona tutto
mFileProperties(1).Value = "FIX,,SYSTEM,1,0/1/5/1/19/1/28/1/73/1/85/9/92/1/104/1/116/1/127/1"
https://www.openoffice.org/api/basic/ma ... torial.pdf
- Allegati
-
- ImportaTXT_prova.txt.zip
- (540 Byte) Scaricato 155 volte
-
- ImportaTXT.ods
- (17.2 KiB) Scaricato 168 volte
LibO:Versione: 6.2.8.2
Build ID: 1:6.2.8~rc2-0ubuntu0.16.04.1- 32-bit
-
Se risolvi:
1. Condividi la soluzione qui con noi
2. Metti [Risolto] al titolo del primo messaggio come spiegato qui
Build ID: 1:6.2.8~rc2-0ubuntu0.16.04.1- 32-bit
-
Se risolvi:
1. Condividi la soluzione qui con noi
2. Metti [Risolto] al titolo del primo messaggio come spiegato qui
-
- Messaggi: 142
- Iscritto il: domenica 10 maggio 2015, 18:17
- Località: Busto Arsizio (VA)
Re: Macro raggruppa separatori di campo
Ciao Unlucky,la macro da te proposta funziona alla grande!!!
Ti ringrazio per l'aiuto,una cosa,come mai l'url del file lo hai definito con myArray?
Ti ringrazio per l'aiuto,una cosa,come mai l'url del file lo hai definito con myArray?
OpenOffice 4.1.1 su windows seven
Re: Macro raggruppa separatori di campo
Perchè ChooseFiles() è una funzione che fornisce come output un array. Con una piccola modifica nel suo codice infatti consente la selezione multipla di più file. L'ho modificata per restituire un solo valore, ma questo viene salvato in un array con dimensione 1. Era una macro che avevo già pronta e che ho solo adattato al tuo caso apportando il minor numero di modifiche. Avrei potuto impostare l'output della funzione come stringa e quindi scrivere direttamente sUrl=ChooseFiles() (a quel punto gli avrei cambiato anche il nome in ChooseFile() )
Siccome sUrl deve essere una stringa, ho successivamente messo sUrl=myarray(0)
Se vuoi un'importazione più specifica, puoi applicare i codici di formato a ciascuna colonna. Ho applicato solo lo standard (1) e il nascosto (9)
Siccome sUrl deve essere una stringa, ho successivamente messo sUrl=myarray(0)
Se vuoi un'importazione più specifica, puoi applicare i codici di formato a ciascuna colonna. Ho applicato solo lo standard (1) e il nascosto (9)
LibO:Versione: 6.2.8.2
Build ID: 1:6.2.8~rc2-0ubuntu0.16.04.1- 32-bit
-
Se risolvi:
1. Condividi la soluzione qui con noi
2. Metti [Risolto] al titolo del primo messaggio come spiegato qui
Build ID: 1:6.2.8~rc2-0ubuntu0.16.04.1- 32-bit
-
Se risolvi:
1. Condividi la soluzione qui con noi
2. Metti [Risolto] al titolo del primo messaggio come spiegato qui
-
- Messaggi: 142
- Iscritto il: domenica 10 maggio 2015, 18:17
- Località: Busto Arsizio (VA)
Re: Macro raggruppa separatori di campo
Ok capito,per comodità ho impostato sUrl con il nome di un file specifico,ma devo ammettere che scegliere il file non è per niente una cattiva idea,potrei metterlo come opzione se non trova il file da importare
Per il resto è perfetto,per ora grazie e nel caso dovessi modificare qualcosa se il txt è diverso per cliente,chiederò di nuovo il tuo aiuto
Per il resto è perfetto,per ora grazie e nel caso dovessi modificare qualcosa se il txt è diverso per cliente,chiederò di nuovo il tuo aiuto
OpenOffice 4.1.1 su windows seven