Condividi:        

access - convertire un numero

Vuoi potenziare i tuoi documenti Word? Non sai come si fa una macro in Excel? Devi creare una presentazione in PowerPoint?
Oppure sei passato a OpenOffice e non sei sicuro di come lavorare al meglio?

Moderatori: Anthony47, Flash30005

access - convertire un numero

Postdi scacco al re » 02/11/06 10:56

sono alle prima armi con access
ho creato una tabella dove ci sono informazionei su degli mp3
in un campo ho messo le informazionei della durata del brano è un campo numerico dove il numero corrisponde ai secondi della durata.
ho creato nella stessa tabella un altro campo data/ora vorrei mettere il corrispondete campo durata ma espresso in minuti e secondi.
1° problema: nel formato data/ora non c'è un campo minuti secondi ma solo ora minuti e secondi come faccio a crearne uno personalizzato al mio scopo?
2° problema: come lego i due campi della tabella in maniera che se io inserisco il numero dei secondi del brano nell'altro campo esca in formato minuti:secondi?
grazie
scacco al re
scacco al re
Utente Senior
 
Post: 524
Iscritto il: 10/05/02 19:18
Località: Sestri Levante

Sponsor
 

Re: access - convertire un numero

Postdi archimede » 02/11/06 11:05

scacco al re ha scritto:2° problema: come lego i due campi della tabella in maniera che se io inserisco il numero dei secondi del brano nell'altro campo esca in formato minuti:secondi?
Anche per evitare questi problemi, è generalmente sconsigliato memorizzare in una tabella di database dei valori calcolati.

Ti consiglio di creare una query con un campo opportunamente calcolato partendo dalla durata in secondi.

HTH.

Alessandro
archimede
Moderatore
 
Post: 2851
Iscritto il: 07/11/02 12:41
Località: Genova

Postdi scacco al re » 02/11/06 19:53

grazie della dritta
sono riuscito a fare una query e trasformare il mio valore numerico in formato data/ora il problema che ho è che il formato è in ore.minuti.secondi mentra mi sarebbe più gradito il formato minuti.secondi (che non è predefinito in access)
come faccio a crearlo?
scacco al re
scacco al re
Utente Senior
 
Post: 524
Iscritto il: 10/05/02 19:18
Località: Sestri Levante

Postdi archimede » 03/11/06 08:36

Come hai fatto la query?

Alessandro
archimede
Moderatore
 
Post: 2851
Iscritto il: 07/11/02 12:41
Località: Genova

Postdi scacco al re » 03/11/06 23:45

la query l'ho creata così:
dalla mia tabella "brani" ho inserito il campo "duratatracciasec" (durata traccia in secondi) nella query nella casella formula ho messo "raggruppamento"
poi sono andato in un campo vuoto e ho inserito durata: FormatDataTime([duratatracciasec]/86400)
e nella casella formula ho inserito "espressione"
ho cliccato "proprietà campo" nella barra degli strumenti e ho messo come formato "ora estesa"
ho salvato la query
a questo punto lanciando la query mi trovo come risultato quello che volevo.
esempio duratatraccia=224 da come risultato durata=00.03.42
unico neo quello 00 davanti delle ore che non riesco a togliere.
bisognerebbe riuscire a personalizzare "ora estesa"
scacco al re
scacco al re
Utente Senior
 
Post: 524
Iscritto il: 10/05/02 19:18
Località: Sestri Levante

Postdi archimede » 04/11/06 09:59

Intendevo un campo calcolato a manina, qualcosa tipo:
Codice: Seleziona tutto
SELECT Int([duratatracciasec]/60) & ":" & [duratatracciasec]-Int([duratatracciasec]/60)*60 AS durata FROM MiaTabella;
HTH.

Alessandro
archimede
Moderatore
 
Post: 2851
Iscritto il: 07/11/02 12:41
Località: Genova

Postdi archimede » 04/11/06 10:25

O anche (se stai sempre sotto ai 60 minuti)
Codice: Seleziona tutto
SELECT Format([duratatracciasec]/86400,"NN:SS") AS durata FROM MiaTabella;
Alessandro
archimede
Moderatore
 
Post: 2851
Iscritto il: 07/11/02 12:41
Località: Genova

Postdi scacco al re » 04/11/06 18:03

innanzi tutto ti ringrazio per l'aiuto
la tua prima soluzione
Codice:
SELECT Int([duratatracciasec]/60) & ":" & [duratatracciasec]-Int([duratatracciasec]/60)*60 AS durata FROM MiaTabella;

è praticamente uguale a quella che ne fratempo avevo pensato io
Codice:
SELECT Minute([durata]) & ":" & Second([durata]) AS durata, FROM Brani

unico neo è che nei secondi non mette lo zero davanti
14:06 me lo mette sotto forma di 14:6

mentre la seconda soluzione funziona

SELECT Format([duratatracciasec]/86400,"NN:SS") AS durata FROM MiaTabella

devo dire che avevo anche io preso in considerazione questa ma ogni volta che in strutturaa cercavo di scrivere la funzione mi restituiva sempre errore di sintassi
poi in visualizzazione SQL l'ho scritta manualmente e ha funzionato.

ancora grazie
ps. ho un altro problemino me apro un altro topic.
scacco al re
scacco al re
Utente Senior
 
Post: 524
Iscritto il: 10/05/02 19:18
Località: Sestri Levante


Torna a Applicazioni Office Windows


Topic correlati a "access - convertire un numero":


Chi c’è in linea

Visitano il forum: Nessuno e 50 ospiti