calendario in cella excel

Anonimo
2016-07-09T09:08:59+00:00

ciao a tutti

vorrei velocizzare l'immissione di date in un foglio di excel e ho pensato a 2 soluzioni:

  • al posto di scrivere 09/07/2016 vorrei scrivere 09072016 e il programma dovrebbe in automatico riconoscere la data.
  • quando una cella è selezionata, combinazione di tasti e che compaia un calendario da cui scegliere una data.

cosa mi suggerite?

Microsoft 365 e Office | Excel | Per la casa | Windows

Domanda bloccata. Questa domanda è stata eseguita dalla community del supporto tecnico Microsoft. È possibile votare se è utile, ma non è possibile aggiungere commenti o risposte o seguire la domanda.

0 commenti Nessun commento
Risposta accettata dall'autore della domanda
Anonimo
2016-07-17T06:52:18+00:00

Ma stai seguendo la procedura qui sotto(in inglese)?

E, come ti è già stato consigliato, c'è anche questo:

o la semplice, banale UserForm proposta nel mio (lontano....) primo post:

La risposta è stata utile?

0 commenti Nessun commento
Risposta accettata dall'autore della domanda
Anonimo
2016-07-09T14:07:29+00:00

Ciao gtsolid,

vorrei velocizzare l'immissione di date in un foglio di excel e ho pensato a 2 soluzioni:

  • al posto di scrivere 09/07/2016 vorrei scrivere 09072016 e il programma dovrebbe in automatico riconoscere la data.
  • quando una cella è selezionata, combinazione di tasti e che compaia un calendario da cui scegliere una data.

cosa mi suggerite? 

Ti sconsiglio il primo approccio.

Prova ad inserire un controllo calendario, dai controlli ActiveX, sul foglio e nel modulo di codice del foglio. incolla il segente codice:

'=========>>

Option Explicit

'--------->>

Private Sub Calendar1_Click()

    With ActiveCell

        .Value = CDbl(Calendar1.Value)

        .NumberFormat = "mm/dd/yyyy"

        .Select

    End With

End Sub

'--------->>

Private Sub Worksheet_SelectionChange(ByVal Target As Range)

    Dim Rng As Range

    Const mioIntervallo As String = "A1:A30"                 '<<=== Modifica

    If Target.Cells.Count > 1 Then

        Exit Sub

    End If

    Set Rng = Me.Range(mioIntervallo)

    With Calendar1

        If Not Application.Intersect(Rng, Target) Is Nothing Then

            .Left = Target.Left + Target.Width - Calendar1.Width

            .Top = Target.Top + Target.Height

            .Visible = True

            .Value = Date

        ElseIf .Visible Then

            .Visible = False

        End If

    End With

End Sub

'<<=========

Cliccando sulla cella (diciamo) A10, se vedrebbe qualcosa del genere:

![](http://fud.community.services.support.microsoft.com/Fud/FileDownloadHandler.ashx?fid=c2e409c7-200a-41c8-8d08-98857732e1d2)

Potresti scaricare il mio file di esempio Gtsolid20160709.xlsm a:

https://www.dropbox.com/s/69cio917kh4twrm/Gtsolid20160709.xlsm?dl=0

===

Regards,

Norman

![](http://fud.community.services.support.microsoft.com/Fud/FileDownloadHandler.ashx?fid=080b1f2a-fb91-4e40-90d5-86aa09f2e296)

La risposta è stata utile?

0 commenti Nessun commento

52 risposte aggiuntive

Ordina per: Più utili
  1. Anonimo
    2016-07-09T22:25:20+00:00

    Ciao Casanamer,

    Farebbe differenza formattare le celle della colonna destinata alle date in formato testo?

    Non so se le tua domanda sia rivolta a me, a  Mauro o a gtsolid e non capisco la domanda! Fin qui tutto bene! ;-)

    Tuttavia se tu stia suggerendo l'inserimento delle date nella prima forma indicato da gtsolid, cioè

    • al posto di scrivere 09/07/2016 vorrei scrivere 09072016 e il programma dovrebbe in automatico riconoscere la data.

    avendo preventivamente imposto un formato testo, credo ciò possa rappresentare un approcchio fattibile ma non consigliabile. In tal caso, si potrebbe sfruttare l'evento change per convertire il testo in una data, forse utilizzando il metodo Range.TextToColumns, ma diventerebbe più complesso se l'utente dovesse, ad esempio, immettere la data nella forma 9072016 , cioè senza lo zero iniziale.

    Tuttavia, credo sia molto possible che io abbia frainteso il significato della tua domanda - non sarebbe nè la prima nè, purtroppo, l'ultima volta! (-:

    Approfitto per chiedere scusa a Fratello  Mauro: quando ho risposto non avevo visto la sua risposta precedente, altrimenti non avrei risposto io.

    ===

    Regards,

    Norman

    La risposta è stata utile?

    0 commenti Nessun commento
  2. Anonimo
    2016-07-09T20:14:34+00:00

    Farebbe differenza formattare le celle della colonna destinata alle date in formato testo?

    La risposta è stata utile?

    0 commenti Nessun commento
  3. Anonimo
    2016-07-09T13:34:44+00:00

    Una soluzione qui:

    Una volta era disponibile un apposito controllo, ma con il proliferare delle versioni di Excel non lo è più per tutte le versioni/sistemi. Nella Community ne abbiamo discusso spesso:

    La risposta è stata utile?

    0 commenti Nessun commento