|
Domanda.
nome=Markus
cognome=Malfertheiner
versione=2000
conosco2=medio
macro=SI
email=m.malfertheiner@baumann-online.it
chra=46
problema=Problema:
es. la cella A1 (foglio 1) ha un collegamento ipertestuale ad una matrice di
celle (A1:J20 del foglio 2); A2 (foglio 1)ha il collegameto ipertestuale
(A25:J45 del foglio 2) .La macro creata mi apre in automatico l'anteprima di
stampa.La seguente macro apre sempre la stessa anteprima di stampa perchè fa
riferimento a dei valori assoluti (A1:J20). quale codice devo inserire per
far aprire l'anteprima di stampa in automatico in
conforme alla cella cliccata sul foglio 1 ?
Sub Macro2()
Dim myrange As Range
Set myrange = ActiveCell
Selection.Hyperlinks(1).Follow NewWindow:=False,
AddHistory:=True
ActiveSheet.PageSetup.PrintArea = "$A$1:$J$20"
ActiveWindow.SelectedSheets.PrintPreview
End Sub
Grazie per il vostro aiuto.
P.s. Potreste darmi un consiglio in riguardo a dei libri su VisualBasic per
Excel, dove posso trovare degli esempi pratici.
Risposta.
salve Markus, temo che la risposta che cerchi, visto che non so se ho capito
bene la tua domanda, sia troppo semplice: è sufficiente creare una macro
simile alla tua, dove cambi il riferimento alla nuova zona, e quindi per la
A2 diventa, cambiando l'indice dell'Hyperlinks in 2 (se è il secondo
hyperlinks sullo stesso foglio):
Sub Macro3()
Dim myrange As Range
Set myrange = ActiveCell
Selection.Hyperlinks(2).Follow NewWindow:=False,
AddHistory:=True
ActiveSheet.PageSetup.PrintArea = "$A$25:$J$45"
ActiveWindow.SelectedSheets.PrintPreview
End Sub
Per un libro puoi comprare "Excel 2002 VBA" di Gianni Giaccaglini, edito
dalla JacksonLibri.
saluti, ennius
|