Condividi:        

[Excel] Attivazione macro SE...

Vuoi potenziare i tuoi documenti Word? Non sai come si fa una macro in Excel? Devi creare una presentazione in PowerPoint?
Oppure sei passato a OpenOffice e non sei sicuro di come lavorare al meglio?

Moderatori: Anthony47, Flash30005

[Excel] Attivazione macro SE...

Postdi marte1503 » 01/01/12 14:02

Ciao e Auguri di Buon Anno a tutti.

Avrei bisogno di inserire come primo comando della mia macro una funzione che,
nel caso in cui in range A2 di Foglio21 è presente il numero 1 esegua la macro riportata sotto,
se c’è un numero diverso da 1 deve andare a foglio 14 senza eseguire la macro.

Codice: Seleziona tutto
Application.ScreenUpdating = False
    Sheets("Foglio21").Select
    ActiveSheet.Unprotect
    Range("Tabella1[[Colore]:[Prezzo]]").Select
    Selection.Copy
    Sheets("Foglio14").Select
    Range("B6").Select
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
    Range("B2:C2").Select
    Sheets("Foglio21").Protect DrawingObjects:=True, Contents:=True, Scenarios:=True
    Sheets("Foglio14").Select
    Application.ScreenUpdating = True
End Sub

Grazie e di nuovo Buon Anno a tutti
marte1503
Utente Senior
 
Post: 232
Iscritto il: 08/01/10 20:43
Località: Como

Sponsor
 

Re: [Excel] Attivazione macro SE...

Postdi Flash30005 » 01/01/12 14:46

Qual'è l'azione che fa variare la cella A2 del foglio21?

E' un valore digitato manualmente oppure vi è una formula?
Nel secondo caso la formula quali riferimenti ha?
In pratica in quale foglio ti trovi che fa cambiare il valore di A2 del foglio21?

Ciao
Flash
Win10 + Office 2010 Ita
"Fotografica" al servizio dell'immagine
Avatar utente
Flash30005
Moderatore
 
Post: 8517
Iscritto il: 27/09/07 11:44
Località: Roma +o-

Re: [Excel] Attivazione macro SE...

Postdi marte1503 » 01/01/12 20:00

Ciao Flash, Buon Anno e grazie per l'aiuto!

A far cambiare il valore in A2 di foglio 21 è una formula, precisamente è =MESE(A1) quindi il suo valore può variare da 1 a 12.
Ps. la cella A1 a sua volta contiene una formula =OGGI()

Grazie
marte
marte1503
Utente Senior
 
Post: 232
Iscritto il: 08/01/10 20:43
Località: Como

Re: [Excel] Attivazione macro SE...

Postdi Anthony47 » 01/01/12 21:52

Io sono meno curioso di Flash e suggerisco di aggiungere 2 istruzioni (If /End IF; marcate <<) come segue:
Codice: Seleziona tutto
If Sheets("Foglio21").range("A2").value =1 Then   '<<
    Application.ScreenUpdating = False    'Esistente
'
'Altre esistenti
'
        Sheets("Foglio21").Protect DrawingObjects:=True, Contents:=True, Scenarios:=True  'Esistente
End If  '<<
        Sheets("Foglio14").Select
        Application.ScreenUpdating = True
    End Sub

Ciao
Avatar utente
Anthony47
Moderatore
 
Post: 19196
Iscritto il: 21/03/06 16:03
Località: Ivrea

Re: [Excel] Attivazione macro SE...

Postdi Flash30005 » 01/01/12 21:56

Quindi all'apertura del file tu vorresti eseguire la macro oppure no
secondo le condizioni da te imposte (?)

se così
Inserisci questo codice in ThisWorkbook

Codice: Seleziona tutto
Private Sub Workbook_Open()
If Worksheets("Foglio21").Range("A2").Value = 1 Then
    Call Tuamacro
Else
    Worksheets("Foglio14").Select
End If
End Sub


Ciao

EDIT: Vedi post di Anthony qui sopra
Flash
Win10 + Office 2010 Ita
"Fotografica" al servizio dell'immagine
Avatar utente
Flash30005
Moderatore
 
Post: 8517
Iscritto il: 27/09/07 11:44
Località: Roma +o-

Re: [Excel] Attivazione macro SE...

Postdi marte1503 » 02/01/12 20:19

Ciao Flash, ciao Anthony.
Sono riuscito solo ora a fare le prove..

Non avendo la necessità di attivare la macro all’apertura del file, ma solo tramite pressione del pulsante abbinato, ho utilizzato la modifica suggerita da Anthony. (E’ perfetta!)

Grazie mille a tutti e due per il supporto.

Se riesco entro sera a preparare la nuova parte di programma torno alla carica con un nuovo help macro che ho già parzialmente in mente…
Per ora grazie e a presto!
marte
marte1503
Utente Senior
 
Post: 232
Iscritto il: 08/01/10 20:43
Località: Como

Re: [Excel] Attivazione macro SE...

Postdi Flash30005 » 02/01/12 22:13

Avevo consigliato l'attivazione della macro all'apertura del file
1) perché non hai risposto alla mia domanda
Flash30005 ha scritto:Qual'è l'azione che fa variare la cella A2 del foglio21?
E' un valore digitato manualmente oppure vi è una formula?
Nel secondo caso la formula quali riferimenti ha?
In pratica in quale foglio ti trovi che fa cambiare il valore di A2 del foglio21?


Era sufficiente dire: "uso un pulsante di comando"

2) Perché fa riferimento alla formula Mese(di data attuale), il mese non cambia da un momento all'altro, nel tuo caso specifico hai una variazione e attivazione della macro tra le 23:59 del 31 dicembre e le ore 00:00 del 1 gennaio
quindi non vedo l'esigenza di avere un pulsante di comando.

Per il futuro...
marte1503 ha scritto:...macro che ho già parzialmente in mente


Spero che non siano idee "marziane" :D

Ciao
Flash
Win10 + Office 2010 Ita
"Fotografica" al servizio dell'immagine
Avatar utente
Flash30005
Moderatore
 
Post: 8517
Iscritto il: 27/09/07 11:44
Località: Roma +o-

Re: [Excel] Attivazione macro SE...

Postdi marte1503 » 02/01/12 22:58

nel tuo caso specifico hai una variazione e attivazione della macro tra le 23:59 del 31 dicembre e le ore 00:00 del 1 gennaio
quindi non vedo l'esigenza di avere un pulsante di comando.


La macro così come è strutturata al momento, è attivabile per tutto l’arco del mese di gennaio se comandata dal pulsante abbinato, e viene disattivata allo scattare del mese successivo, evadendo la parte che incolla i valori ma portandomi comunque su foglio14 (per questo passaggio a me serve l’attivazione manuale)
Sorry per l’omessa spiegazione del pulsante di comando.

Bye
marte
marte1503
Utente Senior
 
Post: 232
Iscritto il: 08/01/10 20:43
Località: Como


Torna a Applicazioni Office Windows


Topic correlati a "[Excel] Attivazione macro SE...":


Chi c’è in linea

Visitano il forum: Nessuno e 29 ospiti