Pannello di Controllo Moderatore ]

[Risolto] Macro per importazione librerie

Discussioni sull'applicazione per i fogli di calcolo

[Risolto] Macro per importazione librerie

Messaggioda geovign » venerdì 14 giugno 2019, 22:53

Nel foglio di calcolo, che allego, è presene una macro per esportare le librerie e finestre di dialogo in una directory a scelta sul pc.
All'interno della stessa directory, verranno create in automatico sub-directory con lo stesso nome librerie da esportate.
Le librerie vengono esportate come "librerie Basic".
E' possibile eseguire anche l'importazione, eventuale aggiornamento della libreria nel caso esista già, partendo dalla directory principale?
Cioè:
- scelgo la directory principale dove esistono le cartelle di ogni libreria
- importo da ogni singola cartella la corrispondente libreria
Saluti e grazie
Geo
Allegati
Esp_Imp Librerie.ods
(46.74 KiB) Scaricato 13 volte
Ultima modifica di charlie il domenica 7 luglio 2019, 9:53, modificato 3 volte in totale.
Motivazione: Aggiunta spunta verde
LibO 6 su MX Linux
geovign
 
Messaggi: 68
Iscritto il: domenica 13 gennaio 2019, 12:19

Re: Macro per importazione librerie

Messaggioda geovign » venerdì 28 giugno 2019, 18:51

Un saluto a tutti.
Provo a formulare la richiesta in maniera diversa, sperando di essere più chiaro.
E' possibile, con una macro, importare in un documento di calc una libreria, ed i relativi moduli/dialog, utilizzando il file script.xlc script.xlb creato con l'esportazione della stessa?
Ringrazio sin da ora.
Saluti
Geo
LibO 6 su MX Linux
geovign
 
Messaggi: 68
Iscritto il: domenica 13 gennaio 2019, 12:19

Re: Macro per importazione librerie

Messaggioda patel » sabato 29 giugno 2019, 7:58

Sei stato chiaro, ma la richiesta è insolita, forse ti conviene provare sul forum internazionale
http://forum.openoffice.org/en/forum/viewforum.php?f=20
-------------------
OpenOffice 4.1 e Libre Office 6.o.7.3 su Windows 10
allega un file di esempio, guadagnerai tempo tu e lo farai risparmiare a chi ti aiuta
patel
Volontario attivo
Volontario attivo
 
Messaggi: 3284
Iscritto il: venerdì 30 aprile 2010, 8:04
Località: Livorno

Re: Macro per importazione librerie

Messaggioda geovign » lunedì 1 luglio 2019, 19:44

Ciao Patel,
mi rendo conto della singolarità della mia richiesta, tant'è che sul web non riesco a trovare nulla, anche solo di adattabile.
Il mio "progetto" è ora in fase di perfezionamento e test, anche presso amici; le volte che correggo/modifico/aggiorno le macro sarebbe comodo avere un pulsante che esegua in automatico l'aggiornamento di tutte le librerie senza dovere utilizzare ogni volta il gestore presente nel programma.
Comunque, se qualcuno avesse idee ...
Grazie a tutti.
Saluti.
Geo
LibO 6 su MX Linux
geovign
 
Messaggi: 68
Iscritto il: domenica 13 gennaio 2019, 12:19

Re: Macro per importazione librerie

Messaggioda lucky63 » lunedì 1 luglio 2019, 21:40

Non ti verrebbe più semplice caricare/impostare le librerie che servono (e relative macro) direttamente nel file.
Così facendo quando aggiorni/aggiungi ... e vuoi far eseguire test da altri ti basta inviargli il file.

Test - Libreria.png
Allegando al quesito un file di esempio si semplifica il lavoro di chi risponde.
Avatar utente
lucky63
Volontario
Volontario
 
Messaggi: 1903
Iscritto il: martedì 18 maggio 2010, 17:01

Re: Macro per importazione librerie

Messaggioda geovign » lunedì 1 luglio 2019, 23:34

Ciao Luky63,
il tuo suggerimento è corretto per un foglio elettronico "semplice".
Nel mio caso specifico, il documento è costituito da 13 fogli con altrettante tabelle, di cui diverse interconnesse tra loro; pertanto non è possibile inviarlo con le modifiche apportate alle macro. Se così facessi i tester (2 colleghi agricoltori che usano realmente il documento) dovrebbero ricopiare tutto il contenuto delle tabelle nel nuovo documento; tanto vale far importare le 14 librerie o quelle modificate attraverso l'apposito gestore.
E' per questo che sto cercando la maniera di fare eseguire l'importazione delle librerie (come giustamente dici tu "...direttamente nel file...") mediante macro usando il file script.xlb, generato per ogni libreria, come da esempio presente nel mio primo post.
Escludo di esportare le librerie come estensione in quanto vengono poi caricate nel contenitore "Macro e finestre di dialogo personali"
Saluti
Geo
LibO 6 su MX Linux
geovign
 
Messaggi: 68
Iscritto il: domenica 13 gennaio 2019, 12:19

Re: Macro per importazione librerie

Messaggioda Gaetanopr » martedì 2 luglio 2019, 19:41

Ho fatto qualche prova e riesco da macro ad importare le librerie però senza i dialoghi, farò qualche altra prova e ti faccio sapere.
Comunque non capisco perché usi tutte queste librerie a mio avviso è meglio usarne una e creare diversi moduli suddivisi per categoria
Openoffice 4.1 su windows xp
Gaetanopr
Volontario
Volontario
 
Messaggi: 2721
Iscritto il: mercoledì 21 novembre 2012, 21:07

Re: Macro per importazione librerie

Messaggioda geovign » martedì 2 luglio 2019, 23:04

Ciao Gaetanopr,
come prima cosa volevo ringraziare tutti per l'aiuto e la cortesia.
Io sto provando a caricare i dialoghi tramite il servizio DialogProvider o DialogProvider2, visto qui , utilizzando il file xdl generato per ogni dialogo durante l'esportazione delle librerie. Ora ho dovuto sospendere le mie prove per mancanza di tempo, ma ci riprovo.
Rileggendo il wiki di Oo, qui , ho visto che è possibile caricare librerie/moduli/dialoghi anche direttamente da un file ods e tutti contemporaneamente. Questo non lo sapevo ed ora mi chiedo: con macro è una possibile soluzione?
@ Gaetanopr: Per mia semplicità di programmazione e mia logica, ancora da principiante e quindi contorta, ho pensato di utilizzare una libreria per ogni foglio di calcolo ed i moduli in funzione delle operazioni da eseguire (registrazione dati, modifiche, cancellazioni, verifiche, etc).
Saluti
Geo
LibO 6 su MX Linux
geovign
 
Messaggi: 68
Iscritto il: domenica 13 gennaio 2019, 12:19

Re: Macro per importazione librerie

Messaggioda Gaetanopr » mercoledì 3 luglio 2019, 15:54

Ho trovato come "importare" pure i dialoghi, tra virgolette in quanto con il metodo che allego le librerie non vengono incorporate nel documento o meglio vengono incorporate ma viene creato un collegamento al file che contiene le librerie(come le librerie di openoffice che puntano ai file presenti sul file Basic), quindi se per errore questo viene cancellato o semplicemente spostato viene generato un errore.
Codice: Seleziona tutto   Espandi visualeStringi visuale
Sub Main
       dim spath as string
       dim NLib  as string
       spath = ConvertToUrl("D:\Nuova Cartella\Raccolta\script.xlb")   'xlb
       spath2 = ConvertToUrl("D:\Nuova Cartella\Raccolta\dialog.xlb")   'xlb
       NLib    = "Nuova_Libreria"
       If BasicLibraries.hasByName(NLib) = True Then
          BasicLibraries.removeLibrary(NLib)
          DialogLibraries.removeLibrary(NLib)
       End If   
          BasicLibraries.CreateLibraryLink(NLib,spath,false)
          DialogLibraries.CreateLibraryLink(NLib,spath2,false)
          ThisComponent.store()
     End Sub


Questo esempio inserisce la libreria Raccolta chiamandola Nuova_Libreria, se già presente viene prima rimossa e poi inserita
Openoffice 4.1 su windows xp
Gaetanopr
Volontario
Volontario
 
Messaggi: 2721
Iscritto il: mercoledì 21 novembre 2012, 21:07

Re: Macro per importazione librerie

Messaggioda geovign » venerdì 5 luglio 2019, 15:35

Grazie di tutto Gaetanopr.
Allego un file con la tua macro adatta; ho eliminato momentaneamente il ciclo if da te proposto ed ho preferito cancellare direttamente le librerie esistenti e successivamente creare i link per non avere librerie incorporate nel documento e non, eccetto ovviamente la standard.
Dopo l'esecuzione della macro, mi ritrovo ad accedere alle librerie tramite link, quindi le librerie, con tutti i moduli e dialog, sono all'interno di una cartella principale e separate dal documento (come già da te evidenziato). Quindi ho provato a sostituire la cartella principale con altra frutto di esportazioni più vecchie; all'avvio del documento mi sono ritrovato con i vecchi moduli. Ho poi ripristinato la cartella principale originaria ed al riavvio del documento sono tornato tutto come prima.
Ora chiedo:
- in questo caso, tutte le modifiche alle macro posso applicarle con la semplice sostituzione della cartella principale? Sembrerebbe di sì, fermo restando collegamenti a pulsanti, collegamenti, etc... ; ma potrebbero manifestarsi malfunzionamenti interni?
- è una prassi utilizzabile nel caso il documento venga "distribuito" agli amici e poi eventualmente aggiornato?
Spero di essere stato chiaro ... scusate ma ho sempre il dubbio che i miei scritti siano chiari solamente a me e non agli altri.
Saluti
Geo
Allegati
Imp_Librerie_Gaetanopr.ods
(13.09 KiB) Scaricato 3 volte
LibO 6 su MX Linux
geovign
 
Messaggi: 68
Iscritto il: domenica 13 gennaio 2019, 12:19

Re: Macro per importazione librerie

Messaggioda Gaetanopr » venerdì 5 luglio 2019, 16:30

geovign ha scritto:...- in questo caso, tutte le modifiche alle macro posso applicarle con la semplice sostituzione della cartella principale? Sembrerebbe di sì, fermo restando collegamenti a pulsanti, collegamenti, etc... ; ma potrebbero manifestarsi malfunzionamenti interni?

Per me è una situazione nuova solitamente modifico le macro direttamente nel file in uso, però trattandosi di un collegamento, basta sostituire la cartella principale e ti ritrovi tutto sul file dove sono presenti i link, anzi tra le prove che ho fatto posso dirti che puoi modificare una macro direttamente aprendo i vari moduli, se ad esempio apri la cartella Raccolta tra i vari file è presente "Module1" (cioè il modulo1 ti basta aprirlo con un lettore di testo tipo Notepad++ apportare la modifica salvare, riaprire il file ods e avrai la macro modificata(sempre da usare con cautela).
Openoffice 4.1 su windows xp
Gaetanopr
Volontario
Volontario
 
Messaggi: 2721
Iscritto il: mercoledì 21 novembre 2012, 21:07

Re: [Risolto] Macro per importazione librerie

Messaggioda geovign » venerdì 5 luglio 2019, 20:01

Anch'io fino adesso ho sempre fatto come te, ma dal momento in cui il file è stato dato ad altri mi sono trovato in difficoltà in quanto non tutti hanno dimestichezza con il programma. Già farli passare a Oo o LibO per la sola compilazione del Quaderno di Campagna è stata una impresa.
Comunque, farò qualche prova in più, ma penso che questa (link a librerie esterne) sarà la strada che intraprenderò. Ovviamente con attenzione come da te suggerito.
Ancora grazie.
Saluti
Geo
LibO 6 su MX Linux
geovign
 
Messaggi: 68
Iscritto il: domenica 13 gennaio 2019, 12:19


Torna a Calc

Chi c’è in linea

Visitano il forum: Google [Bot] e 1 ospite