Normalmente, come auguri di natale, ci arrivano E-mail con animazioni Flash, Gif animate, ec.
Ho pensato che era simpatico farlo con un file di Excel.
Ecco a voi il file che ho creato per augurarvi Buon Natale e un Sereno 2008, lo invio con qualche giorno di
anticipo perche ho lasciato la possibilità di personalizzarlo.
Ecco dove scaricare auguri .xls http://www.rifici.it/public/Auguri.xls
All’apertura ci viene chiesto di abilitare le macro, dopo averle attivate ci godiamo la piccola animazione.
Ecco delle semplici istruzioni per la personalizzazione.
• Si scarica il file
• 
• Alla base del disegno ci sono 5 punti per personalizzare il contenuto basta selezionare quello in giallo,
sopra il numero 4, si apre questa finestra.
• 
• si cambiano i nomi si conferma con il tasto salva ed esci.
• Si salva il file e il gioco è fatto.
• Ecco a cosa servono gli altri punti:
1. Ripetere la presentazione
2. Viene selezionato in automatico a riposo
3. Nascondere i messaggi
4. Personalizzare i messaggi
5. Visualizzare i messaggi
Non vi preoccupate di nascondere il disegno alla chiusure del file viene fatto automaticamente, basta
confermare il salvataggio.
Auguri Calo
Il codice che viene che viene eseguito alla chiusura: Private Sub Workbook_BeforeClose(Cancel As Boolean)
ActiveSheet.Shapes("WordArt 4").Visible = False
ActiveSheet.Shapes("WordArt 5").Visible = False
ActiveSheet.Shapes("WordArt 6").Visible = False
ActiveSheet.Shapes("WordArt 7").Visible = False
ActiveSheet.Shapes("WordArt 8").Visible = False
ActiveSheet.Shapes("WordArt 9").Visible = False
ActiveSheet.Shapes("Forme 15").Visible = False
Range("tutto").Select
Selection.Interior.ColorIndex = 2
Selection.Font.ColorIndex = 2
End Sub
Il codice che viene che viene eseguito all'avvio: Private Sub Workbook_Open()
Dim CU_Ruota As Currency
Dim CU_Veloce As Currency
Dim CU_Media As Currency
Dim CU_Lenta As Currency
Dim CU_Tempo As Currency
Dim CU_Ciclo As Currency
Dim CU_Ciclo1 As Currency
Dim ST_Riga As String
Dim ST_Inizio As String
Dim ST_Fine As String
Application.WindowState = xlMaximized
ActiveSheet.Shapes("WordArt 4").Visible = False
ActiveSheet.Shapes("WordArt 5").Visible = False
ActiveSheet.Shapes("WordArt 6").Visible = False
ActiveSheet.Shapes("WordArt 7").Visible = False
ActiveSheet.Shapes("WordArt 8").Visible = False
ActiveSheet.Shapes("WordArt 9").Visible = False
ActiveSheet.Shapes("Forme 15").Visible = False
Range("tutto").Select
Selection.Interior.ColorIndex = 2
Selection.Font.ColorIndex = 2
Range("A1").Select
For CU_Ciclo = 71 To 1 Step -1
For CU_Ciclo1 = 100 To 1 Step -1
Range("A1").Select
Cells(CU_Ciclo, CU_Ciclo1).Select
Selection.Font.ColorIndex = 3
Next
Next
CU_Tempo = 80
CU_Veloce = 24
CU_Media = 12
CU_Lenta = 80
'------------------------------------------------
ActiveSheet.Shapes("WordArt 4").Visible = True
ActiveSheet.Shapes("WordArt 4").Select
For CU_Ruota = 1 To CU_Tempo
Selection.ShapeRange.IncrementRotation CU_Veloce
DoEvents
Next
For CU_Ruota = 1 To CU_Tempo
Selection.ShapeRange.IncrementRotation CU_Media
DoEvents
Next
'------------------------------------------------
ActiveSheet.Shapes("WordArt 5").Visible = True
ActiveSheet.Shapes("WordArt 5").Select
For CU_Ruota = 1 To CU_Tempo
Selection.ShapeRange.IncrementRotation CU_Veloce
DoEvents
Next
For CU_Ruota = 1 To CU_Tempo
Selection.ShapeRange.IncrementRotation CU_Media
DoEvents
Next
'------------------------------------------------
ActiveSheet.Shapes("WordArt 6").Visible = True
ActiveSheet.Shapes("WordArt 6").Select
For CU_Ruota = 1 To CU_Tempo
Selection.ShapeRange.IncrementRotation CU_Veloce
DoEvents
Next
For CU_Ruota = 1 To CU_Tempo
Selection.ShapeRange.IncrementRotation CU_Media
DoEvents
Next
'------------------------------------------------
ActiveSheet.Shapes("WordArt 7").Visible = True
ActiveSheet.Shapes("WordArt 7").Select
For CU_Ruota = 1 To CU_Tempo
Selection.ShapeRange.IncrementRotation CU_Veloce
DoEvents
Next
For CU_Ruota = 1 To CU_Tempo
Selection.ShapeRange.IncrementRotation CU_Media
DoEvents
Next
'------------------------------------------------
ActiveSheet.Shapes("WordArt 8").Visible = True
ActiveSheet.Shapes("WordArt 8").Select
For CU_Ruota = 1 To CU_Lenta
Selection.ShapeRange.IncrementRotation 36 'cU_Veloce
DoEvents
Next
'------------------------------------------------
ActiveSheet.Shapes("WordArt 9").Visible = True
ActiveSheet.Shapes("WordArt 9").Select
For CU_Ruota = 1 To CU_Lenta
Selection.ShapeRange.IncrementRotation 36 'CU_Veloce
DoEvents
Next
'------------------------------------------------
ActiveSheet.Shapes("Forme 15").Visible = True
ActiveSheet.Shapes("Forme 15").Select
For CU_Ruota = 1 To CU_Tempo
Selection.ShapeRange.IncrementRotation CU_Veloce
DoEvents
Next
For CU_Ruota = 1 To CU_Tempo
Selection.ShapeRange.IncrementRotation CU_Media
DoEvents
Next
'------------------------------------------------
For CU_Ruota = 1 To 50
Range("c1").Select
Range("b1").Select
Range("A1").Select
Next
ActiveSheet.Shapes("WordArt 4").Visible = False
ActiveSheet.Shapes("WordArt 5").Visible = False
ActiveSheet.Shapes("WordArt 6").Visible = False
ActiveSheet.Shapes("WordArt 7").Visible = False
ActiveSheet.Shapes("WordArt 8").Visible = False
ActiveSheet.Shapes("WordArt 9").Visible = False
ActiveSheet.Shapes("Forme 15").Visible = True
End Sub
Ecco invece quello avviene con i pulsantiPrivate Sub OptionButton1_Click()
CambiaNomi.Show
End Sub
Private Sub OptionButton2_Click()
Dim CU_Ruota As Currency
Dim CU_Veloce As Currency
Dim CU_Media As Currency
Dim CU_Lenta As Currency
Dim CU_Tempo As Currency
Dim CU_Ciclo As Currency
Dim CU_Ciclo1 As Currency
Dim ST_Riga As String
Dim ST_Inizio As String
Dim ST_Fine As String
ActiveSheet.Shapes("WordArt 4").Visible = False
ActiveSheet.Shapes("WordArt 5").Visible = False
ActiveSheet.Shapes("WordArt 6").Visible = False
ActiveSheet.Shapes("WordArt 7").Visible = False
ActiveSheet.Shapes("WordArt 8").Visible = False
ActiveSheet.Shapes("WordArt 9").Visible = False
ActiveSheet.Shapes("Forme 15").Visible = False
Range("tutto").Select
Selection.Interior.ColorIndex = 2
Selection.Font.ColorIndex = 2
Range("A1").Select
For CU_Ciclo = 71 To 1 Step -1
For CU_Ciclo1 = 100 To 1 Step -1
' Range("A1").Select
Cells(CU_Ciclo, CU_Ciclo1).Select
Selection.Font.ColorIndex = 3
Next
Next
CU_Tempo = 80
CU_Veloce = 24
CU_Media = 12
CU_Lenta = 80
'------------------------------------------------
ActiveSheet.Shapes("WordArt 4").Visible = True
ActiveSheet.Shapes("WordArt 4").Select
For CU_Ruota = 1 To CU_Tempo
Selection.ShapeRange.IncrementRotation CU_Veloce
DoEvents
Next
For CU_Ruota = 1 To CU_Tempo
Selection.ShapeRange.IncrementRotation CU_Media
DoEvents
Next
'------------------------------------------------
ActiveSheet.Shapes("WordArt 5").Visible = True
ActiveSheet.Shapes("WordArt 5").Select
For CU_Ruota = 1 To CU_Tempo
Selection.ShapeRange.IncrementRotation CU_Veloce
DoEvents
Next
For CU_Ruota = 1 To CU_Tempo
Selection.ShapeRange.IncrementRotation CU_Media
DoEvents
Next
'------------------------------------------------
ActiveSheet.Shapes("WordArt 6").Visible = True
ActiveSheet.Shapes("WordArt 6").Select
For CU_Ruota = 1 To CU_Tempo
Selection.ShapeRange.IncrementRotation CU_Veloce
DoEvents
Next
For CU_Ruota = 1 To CU_Tempo
Selection.ShapeRange.IncrementRotation CU_Media
DoEvents
Next
'------------------------------------------------
ActiveSheet.Shapes("WordArt 7").Visible = True
ActiveSheet.Shapes("WordArt 7").Select
For CU_Ruota = 1 To CU_Tempo
Selection.ShapeRange.IncrementRotation CU_Veloce
DoEvents
Next
For CU_Ruota = 1 To CU_Tempo
Selection.ShapeRange.IncrementRotation CU_Media
DoEvents
Next
'------------------------------------------------
ActiveSheet.Shapes("WordArt 8").Visible = True
ActiveSheet.Shapes("WordArt 8").Select
For CU_Ruota = 1 To CU_Lenta
Selection.ShapeRange.IncrementRotation 36 'cU_Veloce
DoEvents
Next
'------------------------------------------------
ActiveSheet.Shapes("WordArt 9").Visible = True
ActiveSheet.Shapes("WordArt 9").Select
For CU_Ruota = 1 To CU_Lenta
Selection.ShapeRange.IncrementRotation 36 'CU_Veloce
DoEvents
Next
'------------------------------------------------
ActiveSheet.Shapes("Forme 15").Visible = True
ActiveSheet.Shapes("Forme 15").Select
For CU_Ruota = 1 To CU_Tempo
Selection.ShapeRange.IncrementRotation CU_Veloce
DoEvents
Next
For CU_Ruota = 1 To CU_Tempo
Selection.ShapeRange.IncrementRotation CU_Media
DoEvents
Next
'------------------------------------------------
For CU_Ruota = 1 To 50
Range("c1").Select
Range("b1").Select
Range("A1").Select
Next
ActiveSheet.Shapes("WordArt 4").Visible = False
ActiveSheet.Shapes("WordArt 5").Visible = False
ActiveSheet.Shapes("WordArt 6").Visible = False
ActiveSheet.Shapes("WordArt 7").Visible = False
ActiveSheet.Shapes("WordArt 8").Visible = False
ActiveSheet.Shapes("WordArt 9").Visible = False
ActiveSheet.Shapes("Forme 15").Visible = True
OptionButton3 = True
End Sub
Private Sub OptionButton4_Click()
ActiveSheet.Shapes("WordArt 4").Visible = False
ActiveSheet.Shapes("WordArt 5").Visible = False
ActiveSheet.Shapes("WordArt 6").Visible = False
ActiveSheet.Shapes("WordArt 7").Visible = False
ActiveSheet.Shapes("WordArt 8").Visible = False
ActiveSheet.Shapes("WordArt 9").Visible = False
ActiveSheet.Shapes("Forme 15").Visible = False
End Sub
Private Sub OptionButton5_Click()
ActiveSheet.Shapes("WordArt 4").Visible = True
ActiveSheet.Shapes("WordArt 5").Visible = True
ActiveSheet.Shapes("WordArt 6").Visible = True
ActiveSheet.Shapes("WordArt 7").Visible = True
ActiveSheet.Shapes("WordArt 8").Visible = True
ActiveSheet.Shapes("WordArt 9").Visible = True
ActiveSheet.Shapes("Forme 15").Visible = True
End Sub
Ecco invece il codice per la finestra di sceltaOption Explicit
Public Wrd4
Public Wrd5
Public Wrd6
Public Wrd7
Private Sub CommandButton2_Click()
OptionButton3 = True
Unload Me
End Sub
Private Sub CommandButton3_Click()
Dim dimmi
dimmi = MsgBox("Sei sicuro?", vbYesNo)
If dimmi = vbNo Then Exit Sub
Set Wrd4 = ActiveSheet.Shapes("WordArt 4")
Set Wrd5 = ActiveSheet.Shapes("WordArt 5")
Set Wrd6 = ActiveSheet.Shapes("WordArt 6")
Set Wrd7 = ActiveSheet.Shapes("WordArt 7")
Wrd4.TextEffect.Text = TextBox1 ' Calogero
Wrd5.TextEffect.Text = TextBox2 ' marina
Wrd6.TextEffect.Text = TextBox3 ' chiara
Wrd7.TextEffect.Text = TextBox4 ' Trilli
Unload Me
End Sub
Public Sub UserForm_Initialize()
Set Wrd4 = ActiveSheet.Shapes("WordArt 4")
Set Wrd5 = ActiveSheet.Shapes("WordArt 5")
Set Wrd6 = ActiveSheet.Shapes("WordArt 6")
Set Wrd7 = ActiveSheet.Shapes("WordArt 7")
TextBox1 = Wrd4.TextEffect.Text ' Calogero
TextBox2 = Wrd5.TextEffect.Text ' marina
TextBox3 = Wrd6.TextEffect.Text ' chiara
TextBox4 = Wrd7.TextEffect.Text ' Trilli
End Sub