|
Rank: AiutAmico
Iscritto dal : 5/10/2010 Posts: 723
|
Ciao, avrei necessità di implementare un pulsante che mi permetta di spostarmi istantaneamente verso il basso in un foglio di lavoro. In pratica: pigio il pulsante la 1^ volta e il cursore scende da cella A1 a a cella A500 lo pigio la 2^ volta e il cursore scende da cella A500 a a cella A1000 lo pigio la 3^ volta e il cursore scende da cella A1000 a a cella A1500 lo pigio la 4^ volta e il cursore scende da cella A1500 a a cella A2500 lo pigio la 5^ volta e il cursore scende da cella A2500 a a cella A3500 lo pigio la 6^ volta e il cursore scende da cella A3500 a a cella A5000 lo pigio la 7^ volta e il cursore scende da cella A5000 a a cella A7000 lo pigio la 8^ volta e il cursore scende da cella A7000 a a cella A7500 E' tecnicamente possibile? Ora, svolgendo il tutto manualmente, è deprimente... :-))) Ho provato a scrivere 8 macro dedicate associandole ad altrettanti pulsanti, ma il risultato è inguardabile :-))) Grazie assai e buon pomeriggio, eZio
|
|
|
|
|
Rank: AiutAmico
Iscritto dal : 5/29/2003 Posts: 1,694
|
salve più che una soluzione è un giochetto ma vedi tu se ti va bene. Nota: La macro sfrutta una cella di appoggio (nel caso in questione ho usato la cella L1) che conterrà di default il valore 1 Private Sub CommandButton1_Click() Press = Range("L1").Value Select Case Press Case 1 Range("a500").Select Case 2 Range("a1000").Select Case 3 Range("a1500").Select Case 4 Range("a2500").Select Case 5 Range("a3500").Select Case 6 Range("a5000").Select Case 7 Range("a7000").Select Case 8 Range("a7500").Select End Select Rep = MsgBox("Vuoi mantenere la numerazione?", vbYesNo, "Conta Click") If Rep = vbYes Then Range("L1").Value = Range("L1").Value + 1 Else Range("L1").Value = 1 End If End Sub saluti Giap
|
|
Rank: AiutAmico
Iscritto dal : 5/10/2010 Posts: 723
|
Ciao, a10n11 ha scritto: più che una soluzione è un giochetto ma vedi tu se ti va bene.
mi va benissimo... eccezionale...!! (soluzione geniale). Grazie assai e buona serata eZio Nota: se hai voglia e tempo, mi spieghi in due parole il motivo della cella di appoggio? Serve da contatore? (...stando a "Conta Click" si direbbe di si), perché è necessario un conta click? Grazie per tutto...
|
|
Rank: AiutAmico
Iscritto dal : 5/29/2003 Posts: 1,694
|
aetio ha scritto:Ciao, a10n11 ha scritto: più che una soluzione è un giochetto ma vedi tu se ti va bene.
mi va benissimo... eccezionale...!! (soluzione geniale). Grazie assai e buona serata eZio Nota: se hai voglia e tempo, mi spieghi in due parole il motivo della cella di appoggio? Serve da contatore? (...stando a "Conta Click" si direbbe di si), perché è necessario un conta click? Grazie per tutto... salve nel caso in questione, (ho scritto la macro con la prima cosa che mi è venuta in mente) la cella di appoggio mi serve per tenere conto nel numero dei click. si potrebbe usare anche il metodo del recupero del numero di riga della cella attiva. esempio qui sotto: Private Sub CommandButton1_Click() pos = ActiveCell.Row Select Case pos Case 1 To 499 Range("a500").Select Case 500 To 999 Range("a1000").Select Case 1000 To 1499 Range("a1500").Select Case 1500 To 2499 Range("a2500").Select Case 2500 To 3499 Range("a3500").Select Case 3500 To 4999 Range("a5000").Select Case 5000 To 6999 Range("a7000").Select Case 7000 To 7500 Range("a7500").Select End Select End Sub bisogna solo sapere il limite della scansione per ripartire da riga 1 saluti Giap
|
|
Rank: AiutAmico
Iscritto dal : 5/10/2010 Posts: 723
|
Ciao, scusa il ritardo nel rispondere... oggi giornata "campale" :-)
come sempre chiarissimo ed essenziale... tra le due opzioni ho scelto la seconda, più indicata alle operazioni che devo svolgere... Grazie assai e buona serata eZio
|
|
Guest |