attivare celle dopo clic



  • attivare celle dopo clic
    di elios data: 04/01/2014 15:13:22

    Ciao ragazzi,

    desideravo chiedervi come riuscire cliccando su una voce degli elenchi a discesa attivare la cella rispettivamente L22 e L27 e dopo aver inserito i dati e premuto enter si attivi il pulsante relativo.

    Resto in attesa.
    Grazie



  • di gaetanopr data: 04/01/2014 22:54:33

    Non ho ben capito cosa vuoi ottenere, sarebbe meglio che allegassi un esempio con le dovute spiegazioni
    Ciao



  • di Elios (utente non iscritto) data: 04/01/2014 23:22:02

    Mi riferisco al foglio Maschera. Desidero che cliccando su una voce di uno dei due elenchi a discesa si attivi la cella L22 o L27 dove inserisco le quantità e con invio passo al pulsante accanto. è possibile?



  • di patel data: 05/01/2014 13:52:29

    dovresti spiegare prima cosa fa questa macro legata al foglio maschera
     
    Private Sub WorksheetSelectionChange(ByVal Target As Range)
    Dim Intervallo As Range, CL As Range
    If Target.Count > 1 Then ActiveCell.Select
    Set Intervallo = Union(Range("E5"), Range("E7"), Range("E9"), Range("E11"), Range("I5"), Range("I9"), Range("I11"))
    If Target.Address(RowAbsolute:=False, ColumnAbsolute:=False) = "I13" Then
        For Each CL In Intervallo
            If CL = "" Then
                CL.Select
                Exit Sub
            End If
        Next
        MsgBox "Fine inserimento"
    End If
    If Intersect(Target, Intervallo) Is Nothing Then
        For Each CL In Intervallo
            If CL = "" Then
                CL.Select
                Exit Sub
            End If
        Next
        Range("I13").Select
    End If
    End Sub






  • di Elios (utente non iscritto) data: 05/01/2014 14:07:23

    Ciao Patel,
    scusa ma quella non c'entra niente, l'ho "appoggiata" nel file per provare ad applicarla, ma ho dimenticato a rimuoverla.



  • di patel data: 05/01/2014 18:00:25

    Desidero che cliccando su una voce di uno dei due elenchi a discesa si attivi la cella L22 o L27 dove inserisco le quantità e con invio passo al pulsante accanto. è possibile?
    a che serve selezionare la cella ? che significa passare al pulsante accanto ?





  • di patel data: 05/01/2014 18:47:38

    comunque, visto che non avevo mai provato a fare una cosa del genere, prova questo codice al posto del tuo
     
    Private Sub Worksheet_Change(ByVal Target As Range)
    Dim Intervallo As Range, CL As Range
    If Target.Address = "$J$22" Then
        Target.Offset(0, 2).Interior.ColorIndex = 6
        Target.Offset(0, 2).Select
        Shapes("Rettangolo arrotondato 16").Fill.BackColor.RGB = RGB(220, 105, 0)
    End If
    If Target.Address = "$J$27" Then
        Target.Offset(0, 2).Interior.ColorIndex = 6
        Target.Offset(0, 2).Select
        Shapes("Rettangolo arrotondato 17").Fill.BackColor.RGB = RGB(220, 105, 0)
        
    End If
    End Sub
    
    Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    Dim Intervallo As Range, CL As Range
    If Target.Address = "$J$22" Then
        Target.Offset(0, 2).Interior.Color = 9420794
        Shapes("Rettangolo arrotondato 16").Fill.BackColor.RGB = 16772837
    End If
    If Target.Address = "$J$27" Then
        Target.Offset(0, 2).Interior.Color = 9420794
        Shapes("Rettangolo arrotondato 17").Fill.BackColor.RGB = 16772837
    End If
    End Sub






  • di Elios (utente non iscritto) data: 06/01/2014 10:38:35

    Bene, funziona in parte per quello che volevo fare io. Mi spiego
    Dopo aver selezionato una voce di una delle convalide si attiva la cella L22 o L27 (dipende), e subito va a colorare il pulsante.
    Però tra questi due passaggi io devo poter inserire i dati in cella L22/L27 e con Invio si attiva il pulsante Inserisci.
    Io proprio non saprei come fare.



  • di Elios (utente non iscritto) data: 06/01/2014 10:47:59

    Ho provato questo ma non funziona.
     
    Private Sub Worksheet_Change(ByVal Target As Range)
    Dim Intervallo As Range, CL As Range, Bot As Object
    Bot = "Rettangolo arrotondato 5"
    If Target.Address = "$L$22" Then
        Target.Offset(0, 2).Interior.ColorIndex = 6
        Bot.Select
    



  • di patel data: 06/01/2014 12:57:23

    prova così
     
    Private Sub Worksheet_Change(ByVal Target As Range)
    Dim Intervallo As Range, CL As Range
    If Target.Address = "$J$22" Then
        Target.Offset(0, 2).Interior.ColorIndex = 6
        Target.Offset(0, 2).Select
    End If
    If Target.Address = "$J$27" Then
        Target.Offset(0, 2).Interior.ColorIndex = 6
        Target.Offset(0, 2).Select
    End If
    If Target.Address = "$L$22" Then
        Shapes("Rettangolo arrotondato 16").Fill.BackColor.RGB = RGB(220, 105, 0)
    End If
    If Target.Address = "$L$27" Then
        Shapes("Rettangolo arrotondato 17").Fill.BackColor.RGB = RGB(220, 105, 0)
    End If
    End Sub
    
    Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    Dim Intervallo As Range, CL As Range
    If Target.Address = "$J$22" Then
        Target.Offset(0, 2).Interior.Color = 9420794
        Shapes("Rettangolo arrotondato 16").Fill.BackColor.RGB = 16772837
    End If
    If Target.Address = "$J$27" Then
        Target.Offset(0, 2).Interior.Color = 9420794
        Shapes("Rettangolo arrotondato 17").Fill.BackColor.RGB = 16772837
    End If
    End Sub






  • di Elios (utente non iscritto) data: 07/01/2014 21:40:23

    Ciao, volevo chiederti di aiutarmi con il codice che segue. Non riesco a capire perché alla riga 30 mi da errore. Questo è un passaggio che sto eseguendo per aggiornare in seguito il foglio Elenco dopo avere inserito/eliminato articoli.

    Mentre per la questione del foglio Maschera, ho provato a fare come vedi nel codice e sembra che funzioni.
     
    Sub Aggiorna_Modello()
    
    colonna = 1
    j = 1
    Do Until Sheets("Pubblicazioni").Cells(j, colonna) = Empty
    Sheets("Pubblicazioni").Visible = True
        Sheets("Pubblicazioni").Select
        Cells(j, colonna).Select
        Range(Selection, Selection.End(xlDown)).Select
        Range(Selection, Selection.Offset(0, 2)).Select
        Selection.Copy
        Sheets("ModelloMese").Visible = True
        Sheets("ModelloMese").Select
        
        Range("A2").Select
        If Range("A2").Value <> "" Then GoTo 20
        Range(Selection, Selection.End(xlDown)).Select
        Range(Selection, Selection.Offset(0, 4)).Select
        Selection.Delete Shift:=xlUp
    20  Sheets("ModelloMese").Select
        Range("A2").Select
        Selection.Offset(0, 0).Select   'Selection.End(xlDown).Offset(1, 0).Select
    30   ActiveSheet.Paste
    
    colonna = colonna + 4
    Loop
    End Sub
    
    Private Sub Worksheet_Change(ByVal Target As Range) ' by Sid
    
    Select Case Target.Address(0, 0)
     
        Case "J22"
            Me.Range("L22").Activate
        Case "L22"
            If Target.Value <> "" Then
             Copia_Qtaindep   'CODICE
            End If
            Me.Range("L27").Activate
        Case "L27"
            If Target.Value <> "" Then
             Copia_Qta_ricevuta   'CODICE
            End If
      
    
    End Select
    
    End Sub



  • di patel data: 08/01/2014 08:30:46

    a quale file ti riferisci ? come faccio a testare la tua macro ?





  • di Elios (utente non iscritto) data: 08/01/2014 21:13:00

    Ciao, mi spiego:
    il codice mi serve a prendere gli articoli dal foglio Pubblicazioni che sono disposti in colonne per le varie categorie copiarli e disporli nel foglio ModelloMese una sotta l'altra. Questo perche con un altro codice poi aggiorno i fogli dei vari mesi. Altrimenti se inserisco o elimino un articolo l'elenco delle pubblicazioni nei vari fogli non viene aggiornato. Sicuramente ci sarà un modo migliore per farlo, ma io non so come.



  • di patel data: 09/01/2014 08:16:23

    a me la tua macro funziona senza errori





  • di patel data: 09/01/2014 08:17:13

    perché alleghi un file protetto ?





  • di Elios (utente non iscritto) data: 09/01/2014 17:49:12

    Se ti riferisci al file S-28-I Esempio2 non ha nessuna protezione, non capisco. Per quanto riguarda la macro, ha funzionato anche a me dopo che ho postato il messaggio forse perché nel frattempo avevo spento e riacceso il pc?