› Sviluppare funzionalita su Microsoft Office con VBA › Ciclo for con solo ultime due cifre
-
AutoreArticoli
-
Ciao
vorrei creare una macro che prende un valore dalla cella A1
es: 19010567/10
inizia poi un ciclo for decrescente dal numero posto dopo “ / “ fino a 1, modificando tale valore nella cella.
Es:
19010567/9
19010567/8
19010567/7
.
.
.
19010567/1
tale azione mi serve per mandare il file in stampa ad ogni decrescita.
Ciao Crescenzo!
Non ho capito molto bene, ma ti dovrebbe bastare un ciclo sulle righe del tuo foglio ed un altro interno sulla cella interessata per far decrescere il valore fino al valore desiderato!
Se alleghi un file con l'abbozzo della tua macro è più facile!
Paolo
Potrebbe bastare anche una formula...
=LEFT(A9;FIND("/";A9;1)) & RIGHT(A9;LEN(A9)-FIND("/";A9;1))-1
Come macro io farei un ciclo For indice=9 to 1 step -1
e poi nella cella inziile.offset(-indice,0)=parte sinistra & indice
Ciao
Luca
ciao
( inizia poi un ciclo for decrescente dal numero posto dopo “ / “ fino a 1, modificando tale valore nella cella. )
quindi questo va fatto solo sulla cella A1 ?????? OK
( tale azione mi serve per mandare il file in stampa ad ogni decrescita. )
quindi per fare questo dobbiamo sapere a priori quando la Sub() deve intervenire per fare questo lavoro
?? al cambio di una cella, ad un tot di tempo, al salvataggio del file, ad una stampa co0mandata da VBA, ecc. ????? questa e' la domanda da cui applicare la regola di scalare tale valore
fai sapere ciao
ciao a tutti,
ciao Crescenzo,
in A1 del Foglio1 metti 1/10 e ricorda che dopo la barra ci dovranno essere sempre 2 caratteri.
Es. per 8 devi inserire 08.
in un modulo definisci una variabile Public
Public valore As String
sul modulo di Questa cartella di Lavoro
Private Sub Workbook_Open() valore = Val(Right(Range("a1"), 2)) End Sub
nel modulo del Foglio1
`Private Sub Worksheet_Change(ByVal Target As Range) If Val(Right(Range("a1"), 2)) = valore - 1 Then MsgBox "vado in stampa" ' da modificare con l'istruzione di stampa End If valore = Val(Right(Range("a1"), 2)) End Sub `
cambia quanto dopo la barra in A1 diminuendolo di una unità ricordando di inserire 2 cifre
e guarda se siamo su una strada che può andarti bene.
ciao e fai sapere.
Frank
-
AutoreArticoli