Newsgroup: it.comp.lang.visual-basic
Titolo: VBA Excel. Strano comportamento

Sto sviluppando un programmino in VBA che mi legge dei dati da un
DBACCESS e mi compila un foglio di excel.
Ho creato una barra di comando che richiama il modulo di accesso ai
dati, l'importazione dei dati si conclude in maniera corretta.
Quello che non mi funziona è la successiva formattazione delle colonne
e la compilazione di alcuni commenti.
La cosa che mi sconvolge è che se metto il programma in debug con un
punto di interruzione alla riga di formattazione della colonna, il
foglio mi viene compilato in maniera corretta.
Grazie a chi mi vuol dare una mano
Ciao Leo

 news:7533af1a.03022...@posting.google.com...

[...]
    Penso sia meglio che tu ci faccia vedere quella riga.
--
Ciao :o)
Maurizio
--------
?SPQR(C)
 X
--------

...

eccola ma non penso che sia quella riga, comunque posso inviarti anche
tutto il programma.
  With Worksheets("F1_Ca")
        .Range("E2:E500").NumberFormat = "dd/mm/yy"
        .Range("F2:F500").NumberFormat = "dd/mm/yy"
        .Range("W2:W500").NumberFormat = "dd/mm/yy"
        .Range("Z2:Z500").NumberFormat = "dd/mm/yy"
        .Range("AA2:AA500").NumberFormat = "dd/mm/yy"
        .Range("AB2:AB500").NumberFormat = "dd/mm/yy"
        .Range("AE2:AE500").NumberFormat = "dd/mm/yy"
        .Range("A1:IV500").Cells.Font.Size = 8
        .Range("A1:IV500").VerticalAlignment = xlVAlignCenter
        .Range("A1:IV500").HorizontalAlignment = xlVAlignCenter
        .Range("B1").Interior.Color = RGB(220, 220, 220)
        .Range("B1").Font.Color = RGB(0, 0, 0)
        .Range("K1:U1").Interior.Color = RGB(220, 220, 220)
        .Range("K1:U1").Font.Color = RGB(0, 0, 0)
     End With
Grazie Leo

 ha scritto nel messaggio
news:7533af1a.03022...@posting.google.com...

Forse perchè il pgm è "troppo veloce" rispetto all'applicazione delle
modifiche
E' successo anche a me in VB.
Prova a "rallentare" il codice
Ciao.
Paolo


   With Worksheets("F1_Ca")
[...]


 Paolo
Come posso fare per rallentare il codice, DoEvents???? o ci sono altre tecniche
Grazie ancora
Leo

 [...]
Ricevuto?????

 Ricevuto?????
    Si'. Pazienta un "attimino", pero'... Grazie.
    Qualche anticipazione:
        . Option Explicit. Usalo sempre:
            <Microsoft Visual Basic>
            Strumenti > Opzioni...
            Editor
            [v] Controllo automatico sintassi
            [v] Dichiarazione di variabili obbligatoria
            [ OK ]
        . La questione e' controversa (ma non troppo) ma meglio evitare
          l'uso di variabili di tipo Variant. Per esempio, invece di:
                Dim Msg, MyString
          scrivi:
                Dim Msg As String, MyString As String
        . Evita di dichiarare variabili globali. Evita di dichiarare
          variabili a livello di modulo solo perche' condivise da piu'
          di una routine. Usa piuttosto chiamate a sub e function con
          argomenti.
        . Ogni:
            Set <variabile> = <oggetto>
          *deve* avere il suo corrispondente:
            Set <variabile> = Nothing
        . Usi diversi cicli che scatenano eventi "change" in cascata. Un
          debug passo passo (F8) e' quindi assolutamente necessario.
Meglio
          ancora riuscire ad evitare questi cicli ed usare funzioni piu'
          avanzate. E' su questo che sto lavorando ora (a tempo perso,
          ovviamente e purtroppo). A presto.


 
...
Ringrazio
ciao Leo