|
|
|
![]() |
|
Strumenti |
![]() |
#1 |
Member
Iscritto dal: Feb 2001
Messaggi: 114
|
VBA e Excel
ciao a tutti!
sono poco esperto di Visual Basic e mi chiedevo quale è il comando visual basic che applica per esempio delle formattazioni o anche delle formule, alla cella attiva selezionata di volta in volta, una volta creata la macro! se non sbaglio dovrebbe esserci un comando activeCell che fa una cosa del genere, se è questo come si usa? vi ringrazio anticipatamente
__________________
Lo scoppato ![]() anvisic@tin.it |
![]() |
![]() |
![]() |
#2 |
Senior Member
Iscritto dal: Apr 2001
Città: Milano
Messaggi: 3736
|
Le macro in Excel si possono anche registrare; anche se non si conosce nulla di VB; è sufficiente selezionare:
Strumenti->Macro->registra nuova macro (viene dato alla macro un nome predefinito, di solito "Macro1") A questo punto, appare il controllo del registratore, selezionare tutto ciò che si vuole, il registratore memorizzerà tutte le azioni dell'utente. Quando hai finito, fermi il registratore e ti porti in modifica macro; così ha almeno hai un'idea sul codice che ti serve. Insomma, visto che uno strumento c'è, facciamoci aiutare. Da qui modifichi a piacere tutto quello che vuoi, inserendo Loop o quant'altro ti viene in mente. Se lo desideri, registra una bozza di macro, poi posta qui il codice generato e vedremo il da farsi. Se non altro, potrebbe tornare utile anche ad altre persone. ![]() |
![]() |
![]() |
![]() |
#3 |
Member
Iscritto dal: Feb 2001
Messaggi: 114
|
Sub Macro1()
Range("A1").Select ActiveCell.FormulaR1C1 = "51" Range("C4").Select ActiveCell.FormulaR1C1 = "=R[-3]C[-2]*10" Range("C5").Select End Sub questa macro esegue il prodotto del contenuto della cella A1 per 10 nella cella C4. domanda: come faccio a fare in modo che quando eseguo la macro su un'altra cella, questa mi venga moltiplicata per 10 (dovrei riuscire a fare in modo che la macro sia generica e non dipendente ai riferimenti di cella sulla quale è stata registrata). grazie
__________________
Lo scoppato ![]() anvisic@tin.it |
![]() |
![]() |
![]() |
#4 |
Senior Member
Iscritto dal: Apr 2001
Città: Milano
Messaggi: 3736
|
spero di avere capito:
a) scrivi un numero nella cella desiderata b) seleziona la cella c) esegui la macro Sub Macro1() ActiveCell = ActiveCell * 10 End Sub |
![]() |
![]() |
![]() |
#5 |
Member
Iscritto dal: Feb 2001
Messaggi: 114
|
ok ci siamo quasi
se invece volessi inserire una funzione piuttosto che una costante, come la scrivo? in pratica mi interessa che la macro esegua una determinata funzione sulla cella selezionata (che può essere piena o vuota) scusa l'ignoranza ![]() bye lo scoppato
__________________
Lo scoppato ![]() anvisic@tin.it |
![]() |
![]() |
![]() |
#6 |
Senior Member
Iscritto dal: Apr 2001
Città: Milano
Messaggi: 3736
|
metti sempre un esempio di ciò che vuoi ottenere, poi si vede
![]() |
![]() |
![]() |
![]() |
Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 23:21.