Macro inserimento ora scrittura cella
Macro inserimento ora scrittura cella
Salve, vorrei sapere se è possibile una vba che in pratica quando scrivo in una cella, in quella successiva in automatico inserisce l orario statico in formato hh.mm.
Grazie in anticipo.
Grazie in anticipo.
Ultima modifica di charlie il lunedì 27 aprile 2020, 10:44, modificato 1 volta in totale.
Motivazione: Sostituito titolo - Argomento spostato
Motivazione: Sostituito titolo - Argomento spostato
Open office 3.3.0 windows 7
Re: Help vba in calc
Ciao e benvenuto/a sul forum.
Se intanto ti vuoi presentare, farai cosa gradita. Puoi farlo in questa sezione -> viewforum.php?f=16
Se desideri avere una panoramica delle regole del forum puoi consultare il Manuale di sopravvivenza -> http://forum.openoffice.org/it/forum/vi ... hp?f=1&t=2
Buon proseguimento.
Se intanto ti vuoi presentare, farai cosa gradita. Puoi farlo in questa sezione -> viewforum.php?f=16
Se desideri avere una panoramica delle regole del forum puoi consultare il Manuale di sopravvivenza -> http://forum.openoffice.org/it/forum/vi ... hp?f=1&t=2
Buon proseguimento.
charlie
macOS 14.4.1 Sonoma: Open Office 4.1.15 - LibreOffice 7.5.7.2
http://www.charlieopenoffice.altervista.org
macOS 14.4.1 Sonoma: Open Office 4.1.15 - LibreOffice 7.5.7.2
http://www.charlieopenoffice.altervista.org
Re: Help vba in calc
Si è possibile
La seguente macro è associata all'evento di Foglio1 "Contenuto modificato", in questo modo si avvia ogni volta che effettui una modifica.
TargetRange è l'oggetto che rappresenta le celle per le quali vorrei scrivere l'orario nelle celle adiacenti, quando il loro contenuto viene modificato.
Se la cella che viene modificata ("CellSelected") non fa parte dell'area interessata la macro termina senza fare nulla, altrimenti viene eseguita la macro "Orario"
La macro Orario riporta data e ora correnti nella cella adiacente e imposta il formato in "hh.mm"
Per dire alla macro quale area deve considerare come area di interesse, ho scelto di usare Dati>Definisci Area>Nome:Elenco, cioè ho assegnato il nome d'area "Elenco" all'intervallo di celle
La seguente macro è associata all'evento di Foglio1 "Contenuto modificato", in questo modo si avvia ogni volta che effettui una modifica.
TargetRange è l'oggetto che rappresenta le celle per le quali vorrei scrivere l'orario nelle celle adiacenti, quando il loro contenuto viene modificato.
Se la cella che viene modificata ("CellSelected") non fa parte dell'area interessata la macro termina senza fare nulla, altrimenti viene eseguita la macro "Orario"
Codice: Seleziona tutto
Sub foglio_modificato
Doc=ThisCOmponent
Sh=Doc.CurrentController.ActiveSheet
TargetRange = Sh.getCellRangeByName("Elenco")
CellSelected = Doc.currentselection
if CellSelected.supportsService("com.sun.star.sheet.SheetCell") and _
TargetRange.queryIntersection(CellSelected.getRangeAddress()).getCount >= 1 then
Orario(CellSelected)
End If
End Sub
Codice: Seleziona tutto
Sub Orario(oCell As object)
row=oCell.CellAddress.Row
col=oCell.CellAddress.Column
with oCell.SpreadSheet.getcellbyposition(col+1,row)
.value=Now
.numberformat=40
End with
End Sub
- Allegati
-
- Prova1.ods
- (11.51 KiB) Scaricato 167 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
Re: Help vba in calc
Mi servirebbe un altro aiuto, so che esiste una formula, ma non posso usarla perche quella cella deve contenere altri valori, insomma mi servirebbe un altra vba che faccia un controllo sulla celllae7 se essa è vuota cancella anche la cella f7.
Grazie!!!
Grazie!!!
Open office 3.3.0 windows 7
Re: Macro inserimento ora scrittura cella
Ciao, perché ti ostini a chiamare vba quelle che si chiamano macro? Anche in vba che, fra l'altro, qui non c'entra proprio.
charlie
macOS 14.4.1 Sonoma: Open Office 4.1.15 - LibreOffice 7.5.7.2
http://www.charlieopenoffice.altervista.org
macOS 14.4.1 Sonoma: Open Office 4.1.15 - LibreOffice 7.5.7.2
http://www.charlieopenoffice.altervista.org
Re: Macro inserimento ora scrittura cella
Ciao, se invece dell orario volessi inserire la data gg/mm/aa che numero devo inserire in number format?
Grazie
Grazie
Open office 3.3.0 windows 7
Re: Help vba in calc
Ma la macro deve operare in automatico come l'altra oppure devi avviarla manualmente con un pulsante?Serpico ha scritto:mi servirebbe un altra vba che faccia un controllo sulla celllae7 se essa è vuota cancella anche la cella f7.
Numero 30Serpico ha scritto:Ciao, se invece dell orario volessi inserire la data gg/mm/aa che numero devo inserire in number format?
Grazie
Se sei curioso di scoprire altri NumberFormat, tra cui quelli personalizzati, imposta il formato manualmente nel primo foglio cella A1 ed esegui questa macro
Codice: Seleziona tutto
sub ScopriNumberFormatA1
Doc=ThisComponent
Sh=Doc.Sheets(0)
oCell=Sh.getcellrangebyname("A1")
msgbox oCell.numberformat
End sub
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
Re: Macro inserimento ora scrittura cella
Grazie...si lo farò perche sono curioso di sapere...molto gentile...
Open office 3.3.0 windows 7
Re: Macro inserimento ora scrittura cella
Mi servirebbe un piccolo aiuto ancora...
Mi servirebbe quando una cella contiene dei dati mi inserisca in automatico la data odierna in un altra cella.
In partica ho questo range di celle da e7 a e51 quando le celle in questo range hanno un valore, nella riga corrispondente ma nella colonna N mi inserisca la data, e quando invece poi il valore nella cella E viene cancellato anche il suo corrispondente nella cella N viene cancellato...spero di non essere stato contorto nel ragionamento.
Grazie!!!
Mi servirebbe quando una cella contiene dei dati mi inserisca in automatico la data odierna in un altra cella.
In partica ho questo range di celle da e7 a e51 quando le celle in questo range hanno un valore, nella riga corrispondente ma nella colonna N mi inserisca la data, e quando invece poi il valore nella cella E viene cancellato anche il suo corrispondente nella cella N viene cancellato...spero di non essere stato contorto nel ragionamento.
Grazie!!!
Open office 3.3.0 windows 7
Re: Macro inserimento ora scrittura cella
Ho aggiunto una macro al precedente codice che riporta la data come vuoi te. Se la macro per l'orario non ti interessa più, provvedi a escluderla dal tuo progetto. Buon lavoro e scusa per l'attesa.
Codice: Seleziona tutto
REM ***** BASIC *****
Sub foglio_modificato
Doc=ThisCOmponent
Sh=Doc.CurrentController.ActiveSheet
TargetRange = Sh.getCellRangeByName("Elenco")
CellSelected = Doc.currentselection
if CellSelected.supportsService("com.sun.star.sheet.SheetCell") and _
TargetRange.queryIntersection(CellSelected.getRangeAddress()).getCount >= 1 then
Orario(CellSelected)
DataOggi(CellSelected)
End If
End Sub
Sub Orario(oCell As object)
row=oCell.CellAddress.Row
col=oCell.CellAddress.Column
with oCell.SpreadSheet.getcellbyposition(col+1,row)
.value=Now
.numberformat=40
End with
End Sub
Sub DataOggi(oCell As object)
row=oCell.CellAddress.row
with oCell.SpreadSheet.getcellRangeByName("N" & row+1)
If oCell.string<>"" then
.value=Now
.numberformat=30
Else
.ClearContents(7)
End If
End with
End Sub
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: 161
- Iscritto il: mercoledì 2 maggio 2012, 16:05
Re: Macro inserimento ora scrittura cella
Se posso permettermi un suggerimento, almeno per quest'ultima richiesta di Serpico (esempio su una cella)
se la necessità è quella di avere in N10 la data di prima compilazione di E10 e che rimanga tale anche per successivi cambiamenti di E10, si azzera N10 solo se si azzera E10
Mettere tale formula nella cella N10: =SE(E10="";"";SE(N10="";ADESSO();N10))
Bisogna preventivamente abilitare la casella Strumenti>Opzioni>Calc>Calcola>Iterazioni, altrimenti da errore
L'ho presa ed usata da questo forum, forse la versione inglese
se la necessità è quella di avere in N10 la data di prima compilazione di E10 e che rimanga tale anche per successivi cambiamenti di E10, si azzera N10 solo se si azzera E10
Mettere tale formula nella cella N10: =SE(E10="";"";SE(N10="";ADESSO();N10))
Bisogna preventivamente abilitare la casella Strumenti>Opzioni>Calc>Calcola>Iterazioni, altrimenti da errore
L'ho presa ed usata da questo forum, forse la versione inglese
OpenOffice 4.1.13 su Windows 10 PRO 64bit
Re: Macro inserimento ora scrittura cella
Ok...grazie...purtoppo non sono molto bravo, non mi rwsta che provare...grazie a tutti x la celere risposta...
Open office 3.3.0 windows 7
Re: Macro inserimento ora scrittura cella
Salve, ho appena provato il codice, ma non inserisce in automatico, devo sempre lanciare la macro, io vorrei non lanciarla se esiste un metodo, ma che da se vede e fa il resto...
Grazie!!!
Grazie!!!
Open office 3.3.0 windows 7
Re: Macro inserimento ora scrittura cella
Vale quanto detto nel messaggio sopra. Devi collegare la macro "foglio_modificato" all'evento del foglio "contenuto modificato" come anche devi usare il nome d'area "Elenco" per le celle interessate.
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
Re: Macro inserimento ora scrittura cella
Ehm...scusami...quali sono i passaggi x fare queso collegamento del foglio??
Open office 3.3.0 windows 7
Re: Macro inserimento ora scrittura cella
clicca con il tasto destro sulla linguetta del foglio, seleziona "Eventi foglio"
A questo punto assegna all'evento "contenuto modificato" la macro
A questo punto assegna all'evento "contenuto modificato" la macro
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
Re: Macro inserimento ora scrittura cella
Salve, mi servirebbe una macro che copia il valore di un range di celle e le incolla in una finestra di chrome prema invio e che poi chiuda solo quella scheda, e resta aperto il browser.
È realizzabile o solo un sogno??
Grazie!!!
È realizzabile o solo un sogno??
Grazie!!!
Open office 3.3.0 windows 7
Re: Macro inserimento ora scrittura cella
Apri una nuova discussione con titolo adeguato
-------------------
Libre Office 7.5.3.2 su Windows 11
allega un file di esempio, guadagnerai tempo tu e lo farai risparmiare a chi ti aiuta
Libre Office 7.5.3.2 su Windows 11
allega un file di esempio, guadagnerai tempo tu e lo farai risparmiare a chi ti aiuta