Richard scrive:
Se posso essere così audace a chiedere, ti sarei grato se potessi illuminarmi sulla risposta a questo sconcertante enigma sull'integrità sintatica vincolata:
Quando si fa riferimento a una cella per uso esterno in VisualBasic, ad esempio tramite "Range (" F3 "). Selezionare" supponiamo che io desideri invece della colonna 1 sostituire una variabile da un ciclo alla seguente estremità:
For Scarab=3 To 15 Range("FScarab").Select ActiveCell.Value = Scarab * Scarab - 3 Next Scarab
per esempio.
Chiaramente non si può usare FScarab dove prima si avrebbe avuto F3 ma forse esiste un metodo attraverso il quale si può ottenere il risultato desiderato. Cioè, c'è un modo per fare riferimento alla cella nella colonna F e alla riga Scarab per la variabile Scarab e in tal caso potresti divulgare queste informazioni.
Ci sono diversi modi per farlo. Probabilmente il più intuitivo è questo metodo che prevede la concatenazione della lettera di colonna "F" con il numero di riga numerico all'interno del riferimento Range ().
For Scarab=3 To 15 Range("F" & Scarab).Select ActiveCell.Value = Scarab * Scarab - 3 Next Scarab
Il metodo successivo utilizza la funzione CELLS (riga, colonna) invece del riferimento Range. In questo caso, riga e colonna devono essere numeriche. La variabile del numero di riga è già numerica, quindi devi semplicemente convertire la "F" in un 6 nella tua testa. Noterai anche che non è necessario selezionare la cella, puoi semplicemente assegnarle un valore.
For Scarab=3 To 15 Cells(Scarab, 6).Value = Scarab * Scarab - 3 Next Scarab
Infine, è possibile scorrere semplicemente ogni cella nell'intervallo:
For Each cell in Range("F3:F15") Cell.Value = Cell.Row * Cell.Row - 3 Next Cell