[Risolto]macro
							
						[Risolto]macro
		
													
							
						
			
			
			
			Buongiorno a tutti,
come spesso capita sono in difficoltà. Questa volta con le macro ( troppo difficili per il mio sapere ).
Ho tentato in tutte le maniere di andarne a capo ma non c’è nulla da fare senza le basi e un minimo di conoscenza non si va lontano.
Per un giovane amico che si è aperto una piccola attività artigianale ho impostato due foglio con calc di libreoffice per “Preventivo” e “Fattura”.
Adesso volevo creare un foglio di archivio dei dati delle fatture usando un pulsante che in automatico mi inserisca i dati delle fatture nel foglio di ARCHIVIO.
Ho girato e rigirato in internet per trovare la soluzione ma con pochi risultati. Quello che sono riuscito ad impostare è poca cosa scopiazzata malamente.
Sottopongo alla vostra generosità i file che allego, chiedo suggerimenti.
Grazie
			
							come spesso capita sono in difficoltà. Questa volta con le macro ( troppo difficili per il mio sapere ).
Ho tentato in tutte le maniere di andarne a capo ma non c’è nulla da fare senza le basi e un minimo di conoscenza non si va lontano.
Per un giovane amico che si è aperto una piccola attività artigianale ho impostato due foglio con calc di libreoffice per “Preventivo” e “Fattura”.
Adesso volevo creare un foglio di archivio dei dati delle fatture usando un pulsante che in automatico mi inserisca i dati delle fatture nel foglio di ARCHIVIO.
Ho girato e rigirato in internet per trovare la soluzione ma con pochi risultati. Quello che sono riuscito ad impostare è poca cosa scopiazzata malamente.
Sottopongo alla vostra generosità i file che allego, chiedo suggerimenti.
Grazie
- Allegati
 - 
			
		
		
				
- BASIC.odt
 - (27.48 KiB) Scaricato 54 volte
 
 - 
			
		
		
				
- archivio.ods
 - (143.05 KiB) Scaricato 56 volte
 
 
					Ultima modifica di maxvero il mercoledì 11 ottobre 2023, 11:20, modificato 1 volta in totale.
									
			
						
							OpenOffice 4.1.3 su Windows 8.1
			
						Re: macro
Hai fatto una ricerca sul forum? io ho cercato "archivio fatture" e ho trovato un bel pò di esempi.
LibreOffice 7.2.2.2 windows 10
Openoffice 4.1.13 su windows 10
			
						Openoffice 4.1.13 su windows 10
Re: macro
Ciao Gaetanopr, in tutta sincerità ho cercato parecchio ho trovato qualche cosa che ho adattato come hai visto dal mio allegato ma non ho trovato quello che mi risolve il problema. Sicuramente dipende dai miei limiti. Per questo ti chiedo se gentilmente mi puoi dare delle indicazioni precise di dove posso andare a vedere e che faccia al caso mio ( vedi mie indicazioni e allegati. Grazie ancora per l' interessamento.
			
			
									
						
							OpenOffice 4.1.3 su Windows 8.1
			
						Re: macro
Mi intrometto spero non a sproposito.
Ho buttato un occhio alla macro che hai scritto e il ragionamento sembra giusto, almeno, non mi sembri distante da quanto vuoi fare.
Che errori ti da? hai controllato che i nomi siano corretti? forse visto che dichiari un po' di variabili allora tanto vale dichiararle tutte, tipo il foglio fattura il foglio archivio come object e riga come integer ecc, poi magari all'inizio potresti aggiungere un controllo per verificare se i dati del foglio fattura corrispondono con i dati presenti all'ultima riga dell'archivio (If ...... AND.....AND) allora non ti inserisce in archivio la fattura attuale ma ti da riscontro di un msg con il testo che vuoi, giusto per non avere doppioni.
Qual'è il tuo problema nello specifico?
			
			
									
						
							Ho buttato un occhio alla macro che hai scritto e il ragionamento sembra giusto, almeno, non mi sembri distante da quanto vuoi fare.
Che errori ti da? hai controllato che i nomi siano corretti? forse visto che dichiari un po' di variabili allora tanto vale dichiararle tutte, tipo il foglio fattura il foglio archivio come object e riga come integer ecc, poi magari all'inizio potresti aggiungere un controllo per verificare se i dati del foglio fattura corrispondono con i dati presenti all'ultima riga dell'archivio (If ...... AND.....AND) allora non ti inserisce in archivio la fattura attuale ma ti da riscontro di un msg con il testo che vuoi, giusto per non avere doppioni.
Qual'è il tuo problema nello specifico?
OpenOffice 4.1.8 su Windows 7-10
::::May we meet again into the matrix::::
			
						::::May we meet again into the matrix::::
Re: macro
Biagio91, se devi dichiarare le variabili devi stare attento a dichiararle per quelle che sono, gli indici di riga sono sempre dei Long e non Integer come anche gli indici di colonna.
LibreOffice 7.2.2.2 windows 10
Openoffice 4.1.13 su windows 10
			
						Openoffice 4.1.13 su windows 10
Re: macro
I dati con cui si lavora possono essere di diverso tipo, Numeri, Stringhe, i numeri possono essere Interi o con la virgola, in Basic di OpenOffice ce ne sono di 5 tipi, mi soffermo solo su 2.
Integer che va da un numero intero compreso tra -32768 e 32767 e Long valori interi compresi tra -2147483648 e 2147483647, se con un ciclo ti trovi ad elaborare la riga 32769 e la variabile ad esempio i che attraversa le righe è stata dichiarata come Integer la macro si arresterebbe andando in owerflow cioè supererebbe i limiti che può contenere la variabile di tipo Integer, considera che le righe totali su un foglio di OpenOffice sono più di un milione quindi l'errore è dietro l'angolo, oltretutto anche se ti trovi a lavorare con righe al sotto del limite non andrai in errore ma costringi OpenOffice a fare conversioni interne tra i vari tipi restituiti e assegnati con le variabili.
Ti allego un esempio, lancia questa macro con variabile Riga dichiarata come Integer e poi cambiala in Long
Codice: Seleziona tutto
Sub Main
Dim Riga As Integer
Riga =  ThisComponent.Sheets(0).GetCellRangeByName("A32769").CellAddress.Row
End SubLibreOffice 7.2.2.2 windows 10
Openoffice 4.1.13 su windows 10
			
						Openoffice 4.1.13 su windows 10
Re: macro
Cio amici, gentilissimi.
Ho non poche difficoltà a seguirvi vista l' ignoranza in materia e poi non poco incidono i miei 73 ....
Guarderò con calma sperando di capirci qualche cosa.
Adesso sono appena rientrato.
Questa mattina sveglia alle 5.00 per andare a pescare. Sicuramente i risultati della pesca ( 6 Kg. di orate con le canne da terra ) sono sicuramente piu' proficui del Basic dove ne capisco poco o niente.
Comunque grazie ancora continuate ad aiutarmi.
Ciao ragazzi ( siete tutti ragazzi per chi è avanti con l' ... )
			
			
									
						
							Ho non poche difficoltà a seguirvi vista l' ignoranza in materia e poi non poco incidono i miei 73 ....
Guarderò con calma sperando di capirci qualche cosa.
Adesso sono appena rientrato.
Questa mattina sveglia alle 5.00 per andare a pescare. Sicuramente i risultati della pesca ( 6 Kg. di orate con le canne da terra ) sono sicuramente piu' proficui del Basic dove ne capisco poco o niente.
Comunque grazie ancora continuate ad aiutarmi.
Ciao ragazzi ( siete tutti ragazzi per chi è avanti con l' ... )
OpenOffice 4.1.3 su Windows 8.1
			
						Re: macro
Ciao, questo è un inizio, ho cambiato alcune cose nella macro, ho formattato il campo Partita IVA come testo in quanto la partita iva potendo iniziare con lo zero necessita di essere un campo testuale.
Io aggiungerei un controllo per VERIFICARE se la fattura non è stata già inserita altrimenti ad ogni pressione ne archivii una copia.
			
							Io aggiungerei un controllo per VERIFICARE se la fattura non è stata già inserita altrimenti ad ogni pressione ne archivii una copia.
- Allegati
 - 
			
		
		
				
- archivio.ods
 - (143.29 KiB) Scaricato 61 volte
 
 
LibreOffice 7.2.2.2 windows 10
Openoffice 4.1.13 su windows 10
			
						Openoffice 4.1.13 su windows 10
Re: macro
Grazie Gaetanopr,
ti ringrazio per gli aiuti che mi stai dando, ma purtroppo procedo con molte difficoltà.
1° problemino - Quando cerco di apportare piccole modifiche alla macro e clicco il pulsante con freccia ( esegui) mi compare la scritta " Per motivi di sicurezza non è possibile eseguire la macro" come posso sbloccare il tutto ? ( vedi allegato )
2° problemino - quando inserisco la fattura numero 2 e premo il pulsante " Pulsante " il foglio ARCHIVIO non si aggiorna. Dove sto sbagliando ?
Grazie ancora
P.S. Chiedo gentilmente istruzioni comprensibili per un neofita che a fatica cerca di fare i primi passi con le macro
			
							ti ringrazio per gli aiuti che mi stai dando, ma purtroppo procedo con molte difficoltà.
1° problemino - Quando cerco di apportare piccole modifiche alla macro e clicco il pulsante con freccia ( esegui) mi compare la scritta " Per motivi di sicurezza non è possibile eseguire la macro" come posso sbloccare il tutto ? ( vedi allegato )
2° problemino - quando inserisco la fattura numero 2 e premo il pulsante " Pulsante " il foglio ARCHIVIO non si aggiorna. Dove sto sbagliando ?
Grazie ancora
P.S. Chiedo gentilmente istruzioni comprensibili per un neofita che a fatica cerca di fare i primi passi con le macro
- Allegati
 - 
			
		
				
- piccole modifiche.png (77.58 KiB) Visto 1538 volte
 
 
OpenOffice 4.1.3 su Windows 8.1
			
						Re: macro
Avendo allegato un file con la macro pensavo sapessi come fare.
Per farla funzionare devi abilitare il programma alle macro andando su Opzioni - Sicurezza - Sicurezza delle macro e imposta a medio, ad ogni apertura del file ti apparirà un messaggio devi cliccare sul pulsante "Abilita".
Segui questa guida per copiare la macro su un altro file e associarla ad un pulsante
http://professoressa.altervista.org/Dis ... re_OOo.pdf
			
			
									
						
							Per farla funzionare devi abilitare il programma alle macro andando su Opzioni - Sicurezza - Sicurezza delle macro e imposta a medio, ad ogni apertura del file ti apparirà un messaggio devi cliccare sul pulsante "Abilita".
Segui questa guida per copiare la macro su un altro file e associarla ad un pulsante
http://professoressa.altervista.org/Dis ... re_OOo.pdf
LibreOffice 7.2.2.2 windows 10
Openoffice 4.1.13 su windows 10
			
						Openoffice 4.1.13 su windows 10
Re: macro
Grazie,
prima parte risolta, io avevo impostato con basso ma non mi succedeva nulla ( chissà cosa ho fatto ) invece con medio funziona egregiamente. Se portati per mano anche il più incapace ( come il sottoscritto ) con pazienza riesce.
Ora proseguo la lezione provando ad associarla ad un pulsante.
Ti sono riconoscente Gaetano, buona giornata.
Massimo
			
			
									
						
							prima parte risolta, io avevo impostato con basso ma non mi succedeva nulla ( chissà cosa ho fatto ) invece con medio funziona egregiamente. Se portati per mano anche il più incapace ( come il sottoscritto ) con pazienza riesce.
Ora proseguo la lezione provando ad associarla ad un pulsante.
Ti sono riconoscente Gaetano, buona giornata.
Massimo
OpenOffice 4.1.3 su Windows 8.1
			
						Re: macro
Un saluto a tutti, 
ma in particolar modo al mio caro “ amico consulente “ Gaetano.
Ho fatto qualche piccolo progresso con le macro ( poca cosa, ma mi accontento per il momento ).
Adesso non riesco a risolvere un altro problemino inerente la formattazione condizionale.
Come vedi allego il file dove devo copiare in K7 e in tutte le celle sottostanti della colonna K del foglio “ARCHIVIO” le impostazioni delle celle soprastanti K6 e K5.
La formattazione condizionale delle due celle ho dovuto farla singolarmente perché altrimenti se la copiavo mi modificava tutta la colonna.
Ho tentato con copia incolla, con incolla speciale ma non funziona.
Non vorrei impostare la formattazione condizionale per tutte le cella da K5 a K50.
Chi mi suggerisce un sistema corretto e veloce.
Grazie, saluti da Venezia
			
							ma in particolar modo al mio caro “ amico consulente “ Gaetano.
Ho fatto qualche piccolo progresso con le macro ( poca cosa, ma mi accontento per il momento ).
Adesso non riesco a risolvere un altro problemino inerente la formattazione condizionale.
Come vedi allego il file dove devo copiare in K7 e in tutte le celle sottostanti della colonna K del foglio “ARCHIVIO” le impostazioni delle celle soprastanti K6 e K5.
La formattazione condizionale delle due celle ho dovuto farla singolarmente perché altrimenti se la copiavo mi modificava tutta la colonna.
Ho tentato con copia incolla, con incolla speciale ma non funziona.
Non vorrei impostare la formattazione condizionale per tutte le cella da K5 a K50.
Chi mi suggerisce un sistema corretto e veloce.
Grazie, saluti da Venezia
- Allegati
 - 
			
		
		
				
- PROTOTIPO.ods
 - (147.11 KiB) Scaricato 62 volte
 
 
OpenOffice 4.1.3 su Windows 8.1
			
						Re: macro
Ciao, per poter copiare la formattazione condizionale alle altre celle, i riferimenti di riga nelle formule devono essere di tipo relativo vedi guida
https://help.libreoffice.org/latest/it/ ... t_ref.html
Queste due condizioni $ARCHIVIO.$L$5=$ARCHIVIO.$J$5 + $ARCHIVIO.$M$5=$ARCHIVIO.$J$5 possono essere racchiuse in una in questo modo
$ARCHIVIO.$L5 +$ARCHIVIO.$M5 =$ARCHIVIO.$J5, ti basta sommare contanti+bonifico, oltretutto una fattura potrebbe essere pagata in parte contanti e in parte con bonifico, in questa casistica per come avevi fatto tu non sarebbe mai risultata verde la cella.
Le formule per la formattazione condizionale sono inserite fino a riga 20, ti basta fare copia e incolla speciale - formati per applicarla fino a dove ti necessita.
PS: Per altre problematiche è meglio aprire nuove discussioni con titolo appropriato.
Saluti
			
							https://help.libreoffice.org/latest/it/ ... t_ref.html
Queste due condizioni $ARCHIVIO.$L$5=$ARCHIVIO.$J$5 + $ARCHIVIO.$M$5=$ARCHIVIO.$J$5 possono essere racchiuse in una in questo modo
$ARCHIVIO.$L5 +$ARCHIVIO.$M5 =$ARCHIVIO.$J5, ti basta sommare contanti+bonifico, oltretutto una fattura potrebbe essere pagata in parte contanti e in parte con bonifico, in questa casistica per come avevi fatto tu non sarebbe mai risultata verde la cella.
Le formule per la formattazione condizionale sono inserite fino a riga 20, ti basta fare copia e incolla speciale - formati per applicarla fino a dove ti necessita.
PS: Per altre problematiche è meglio aprire nuove discussioni con titolo appropriato.
Saluti
- Allegati
 - 
			
		
		
				
- PROTOTIPO.ods
 - (144.18 KiB) Scaricato 64 volte
 
 
LibreOffice 7.2.2.2 windows 10
Openoffice 4.1.13 su windows 10
			
						Openoffice 4.1.13 su windows 10
