Cella timer -tieni in conto
Hai un problema con Excel? 
Cella timer -tieni in conto
di Patrick (utente non iscritto) data: 08/04/2010
Buonasera a tutti,ho un piccolo problema;
io vorrei creare ad esempio sul foglio 2 nella cella a1 una cella che mi tiene il conto del tempo che il file rimane aperto;
mi spiego meglio...ogni volta che il file viene aperto la cella timer riprende a girare fino a quando non lo chiudo,quando poi riapro il file ritorna a girare cosi da sapere alla fine quanto tempo ho lavorato effettivamente sul file.
grazie mille
Now
di Rp71 (utente non iscritto) data: 09/04/2010
In vba memorizza quando apri il file in una variabile il valore "now" (adesso > data ora) e prima di chiudere fai la sottrazione del nuovo "now" e la variabile memorizzata in precedenza. memorizzi il dato in un'altra variabile e la volta successiva lo utilizzi come base di partenza x il calcolo incrementale del tempo ... e così via.
di Locate (utente non iscritto) data: 09/04/2010
Ciao
ti posto una macro che devi inserire in -- thisworkbook -- e devi inserire nel foglio2 in cella b3 la seguente formula =b2-b1 , attenzione che in questa cella quando va in calcolo negativo ti mostra dei cancelletti non fa niente perche appena esci esegue il calcolo e allapertura lo aggiorna , le celle b1:b3 vanno formattate in hh:mm.ss la b4 in [h]:mm.ss attenzione alle parentesi quatre
ciao da locate
spero di essere stato utile
Option Explicit
Private Sub Workbook_BeforeClose(Cancel As Boolean)
Worksheets("Foglio2").Range("B2").Value = Time ''chiusura
End Sub
Private Sub workbook_open()
Dim orario_t
orario_t = Worksheets("Foglio2").Range("B4")
orario_t = orario_t + Worksheets("Foglio2").Range("B3")
Worksheets("Foglio2").Range("B4").Value = orario_t
Worksheets("Foglio2").Range("B1").Value = Time ''apertura
Foglio1.Select
End Sub |
di Locate (utente non iscritto) data: 09/04/2010
Ciao
mi sono dimenticato un particolare importante
la prima volta che esegui la macro in b4 quando rientri troverai un valore errato, elimina e da quel momento parte il conto da zero, questo lo puoi fare in qualsiasi momento anche inserendo orario di partenza manualmente
prova ciao
di Patrick (utente non iscritto) data: 09/04/2010
Grazie mille va benissimo!non credevo si potesse fare...grazie mille ancora
di Patrick (utente non iscritto) data: 09/04/2010
Ho solo un problema...nel file che sto utilizzando tengo il conto anche degli accessi con questo codice che e se inserisco il codice che mi hai girato si blocca tutto xkè trova 2 volte la voce private sub workbook_open()...come posso risolvere!?
Private Sub Workbook_Open()
mfilehandle = FreeFile
strpath = "C:aperture.txt"
On Error GoTo ErrorHandler
Open strpath For Input As #mfilehandle
Close #mfilehandle
Ok:
Open strpath For Input As #mfilehandle
Input #mfilehandle, Numero
Cells(1, 1) = Numero + 1
Close #mfilehandle
Open strpath For Output As #mfilehandle
Print #mfilehandle, Numero + 1
Close #mfilehandle
Exit Sub
ErrorHandler: ' Error-handling routine.
Select Case Err.Number ' Evaluate error number.
Case 53 ' "File already open" error.
Open strpath For Output As #mfilehandle
Print #mfilehandle, 0
Close #mfilehandle
GoTo Ok
End Select
Resume ' Resume execution at same line
' that caused the error.
End Sub |
Errore
di Patrick (utente non iscritto) data: 10/04/2010
Il problema di far convivere i due codici l'ho risolto
Vuoi Approfondire?