Newsgroup: it.comp.lang.visual-basic
Titolo: Problema assurdo PageSetup con VBA

Salve a tutti!
Ho scritto una routine in VB .NET che deve compiere operazioni su un foglio
excel e stamparlo previo un settaggio dell'area di stampa e di alcune altre
cosine..
Ora, il codice incriminato, anche se credo che non serva tanto alla
soluzione, e' questo:
'Preparazione alla stampa
With XlWorksheet.PageSetup
    .PrintArea = "$A$" & TmpPosSubheaderPage & ":$" & Chr(NColsReal + 64) &
"$"& ((TmpPosSubheaderPage + RowsPerPage) - 1)
    .LeftHeader = ""
    .RightHeader = ""
   .LeftFooter = ""
   .CenterFooter = "Pagina " & (Index + 1) & " di " & (NPages)
   .RightFooter = ""
   .LeftMargin = XlApplication.InchesToPoints(0.787401575)
   .RightMargin = XlApplication.InchesToPoints(0.787401575)
   .TopMargin = XlApplication.InchesToPoints(0.984251969)
   .BottomMargin = XlApplication.InchesToPoints(0.984251969)
   .HeaderMargin = XlApplication.InchesToPoints(0.5)
   .FooterMargin = XlApplication.InchesToPoints(0.5)
   .PrintHeadings = False
   .PrintGridlines = False
   .PrintComments = Excel.XlPrintLocation.xlPrintNoComments
   .CenterHorizontally = False
   .CenterVertically = False
   .Orientation = Excel.XlPageOrientation.xlPortrait
   .Draft = False
   .PaperSize = Excel.XlPaperSize.xlPaperA4
   .FirstPageNumber = Excel.Constants.xlAutomatic
   .Order = Excel.XlOrder.xlDownThenOver
   .BlackAndWhite = False
   .Zoom = False
   .FitToPagesWide = 1
   .FitToPagesTall = 1
End With
Funziona tutto benissimo quando sono in modalita' di sviluppo, la pagina
viene settata correttamente e senza problemi, solo che, quando compilo il
codice e lo porto su un altro PC mi viene fuori sempre l'errore "impossibile
impostare la proprieta' PrintArea per la classe PageSetup", elminando la
riga dove setta la PrintArea l'errore viene dato sul LeftHeader, e cosi'
via, cio' mi fa pensare che il problema riguardi proprio PageSetup.
Ho cercato su google in questo NG, ci sono state altre 3-4 persone con lo
stesso problema ma nessuna soluzione, ho cercato sui NG Microsoft e
direttamente sul sito ma sembra che questo errore non sia saltato fuori, a
questo punto temo che sia una questione di versioni: io sto facendo girare
il tutto sotto Excel '97 in italiano, la routine l'ho provata sia con il
.NET framework 1.0 (sviluppata in Visual Studio .NET) che con il .NET
framework 1.1 (sviluppata con il Visual Studio .NET 2003) e non cambia
nulla, sto cercando di trovare un modo per provare su Excel 2000 e/o in
italiano, mi chiedevo pero' se, a oggi, esiste una soluzione valida di
questo problema.. o se qualcuno lo conosce..
Grazie!
Ciao!

Ti dirò forse una menata ... ma facile che le proprietà
che espone il pagesetup di .net siano diverse dalla com
utilizzata da excel 97/2000.
In questi giorni ho finito, con l'aiuto di MS, una classe
che affronta il discorso pagesetup.
Ti posso solo dire che non sarei mai riuscita a farlo, perchè
dentro al codice che mi ha ridato il tecnico MS ci
sono codici e istruzioni totalmente indocumentate che
solo MS conosce.
-- 
Saluti
Andrea Moro
Sito Comune : 
http://www.it-lang-vb.net

 solo MS conosce.
Ma ... no, niente, non volevo proprio dire niente. :-(

 Ma ... no, niente, non volevo proprio dire niente. :-(
E che vuoi dire ... mi ci sono lamentato pure io, pure con il tizio che ti
telefona dopo n giorni per avere un feedback sul servizio ricevuto.
Ma sai come la prendeno la mia lamentela? Con un bel "Stica~~i"


 Salve a tutti!
[CUT]
Allora, ho risolto, non so come di preciso.. =)
In realta' i test che avevo fatto non erano del tutto esatti: con il NET
Framework 1.0 effettivamente c'erano dei problemi, ma i test effettuati con
il Framework 1.1 erano sbagliati in quanto la macchina dov'era installato
non aveva configurato la stampante... eh.. 'so scemo.. :-))
Di conseguenza tutto ha funzionato con il programma compilato in VB NET 2003
e Framework 1.1, *non e'* quindi un problema di impostazioni
internazionali.. ho fatto la prova con Excel '97 in inglese e il discorso
era sempre lo stesso...
Ciao!
Rex