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ù recente
  1. Anonimo
    2016-07-14T21:37:00+00:00

    Ciao Casanmaner,

    Nello specifico non ho letto quel documento. In studio ho copiato il file da uno dei due PC,  copiato e poi ho registrato manualmente. 

    Ma mi chiedevo se esistesse già qualcosa di automatizzato magari da parte di Microsoft. 

    Per quanto ne so io, credo di no.

    Tuttavia, forse il seguente link potrebbe essere di interesse:

    https://msdn.microsoft.com/en-us/library/aa262321(v=vs.60).aspx

    ===

    Regards,

    Norman

    La risposta è stata utile?

    0 commenti Nessun commento
  2. Anonimo
    2016-07-14T20:27:50+00:00

    Nello specifico non ho letto quel documento. In studio ho copiato il file da uno dei due PC,  copiato e poi ho registrato manualmente. 

    Ma mi chiedevo se esistesse già qualcosa di automatizzato magari da parte di Microsoft.

    La risposta è stata utile?

    0 commenti Nessun commento
  3. Anonimo
    2016-07-14T20:11:22+00:00

    Ciao Casanmaner,

    Ciao Norman, a parte scaricare il file zippato esiste anche qualche "Fix" che eventualmente lo copi direttamente nella cartella di sistema e poi esegua la registrazione in base al sistema operativo?

    In studio su 4 pc 2 non avevano il componente e tutti e quattro hanno installato Office 2013.

    Stavo un po' sperimentando lo strumento su alcuni file excel usati in studio e mi sono accorto che in due non c'era per via delle proteste del debug :-)

    Mah?

    Hai provato a seguire le istruzioni passo per passo nel file Installation instructions for mscal.pdf di Graham? Se tu stia cercando di automatizzare il processo con uno script di vb, visto che si tratta di solo due pc, non credo che valga la pena.

    ===

    Regards,

    Norman

    La risposta è stata utile?

    0 commenti Nessun commento