inserimento automatico dati NO elenco a tendina

salve stavo lavorando su un foglio excel e mi tornerebbe utile avere informazioni su una particolare funzione dell'inserimento automatico:

mi spiego meglio dispongo di almeno 30 alternative di dati da inserire nella cella.

per ovvi motivi il menu a tendina mi è scomodo.

vorrei sapere se è possibile creare un inserimento dati basandosi sul codice da digitare nella cella che corrisponda al ad esempio al1 valore

ad esempio

ho 30 alternative di dati

1-magazzino                                                                        

2- casa 

3- lavoro

4- scuola

    ...

   ....

    ....

30

quello che cerco è il comando che mi permetta di inserire casa scrivendo nella cella ad esempio il codice 2

spero di essere stato chiaro e ringrazio chiunque voglia aiutarmi

 

Informazioni domanda


Ultimo aggiornamento febbraio 22, 2018 Visualizzazioni 166 Si applica a:
Risposta


ps sarebbe possibile modificare anche il colore delle singole celle per personalizzarle?

                 Case 1
                     .Value = "Casa"
                     .Interior.ColorIndex = 6  '<<=== colore cella
                     .Font.ColorIndex = 3       '<<=== colore carattere
                 Case 2
                     .Value = "Auto"
                     .Interior.ColorIndex = 10
                     .Font.ColorIndex = 9
                 Case 3
                     .Value = "Moto"
                     .Interior.ColorIndex = 1
                     .Font.ColorIndex = 6
                 Case 4
                     .Value = "Bici"
                     .Interior.ColorIndex = 8
                     .Font.ColorIndex = 1

Per vedere i colori e i rispettivi valori, copia incolla questa macro in un modulo standard di un nuovo file e poi eseguila:

 Public Sub m()
    Dim lng As Long
    With ThisWorkbook.Worksheets("Foglio1")
        For lng = 0 To 56
            .Cells(lng + 1, 1).Value = lng
            .Cells(lng + 1, 2).Interior.ColorIndex = lng
        Next
    End With
 End Sub

Trovi un esempio completo qui:

--
Mauro Gamberini
Microsoft© MVP (Excel)
http://www.maurogsc.eu

Il problema è stato risolto?

Siamo spiacenti che questo non sia stato d'aiuto.

Fantastico! Grazie per aver scelto questa risposta.

Sei soddisfatto di questa risposta?

Grazie per il tuo commento, ci aiuta a migliorare il sito.

Sei soddisfatto di questa risposta?

Grazie per il tuo commento.

Risposta
ho un altro piccolo problema.... come riduco o ingrandisco la dimensione del carattere mare?

    Dim rng As Range
    Dim s() As String
    Dim lng1 As Long
    Dim lng2 As Long
   
    On Error Resume Next
   
    s = Split(Target, vbNewLine)
    
     Set rng = Me.Range("A1:A10")
    
     With Target

         If Intersect(rng, Target) Is Nothing Then Exit Sub
        
         If .Cells.Count = 1 Then
             Select Case .Value
                 Case 1
                      .Value = "Casa" & vbNewLine & "mare"
                      s = Split(.Value, vbNewLine)
                      lng1 = Len(s(0)) + 3
                      lng2 = Len(s(1))
                      .Characters(Start:=lng1, Length:=lng2).Font.Size = 14
                      .Interior.ColorIndex = 1  '<<=== colore cella
                      .Font.ColorIndex = 2      '<<=== colore carattere

In grassetto le parti aggiunte. Risultato:

--
Mauro Gamberini
Microsoft© MVP (Excel)
http://www.maurogsc.eu

Il problema è stato risolto?

Siamo spiacenti che questo non sia stato d'aiuto.

Fantastico! Grazie per aver scelto questa risposta.

Sei soddisfatto di questa risposta?

Grazie per il tuo commento, ci aiuta a migliorare il sito.

Sei soddisfatto di questa risposta?

Grazie per il tuo commento.