problème de portabilité versions excel

problème de portabilité versions excel - VB/VBA/VBS - Programmation

Marsh Posté le 11-08-2004 à 08:23:01    

Bonjour à tous,
 
J'ai récemment créé un classeur qui manipule des données trés nombreuses à partir d'un fichier texte par du code vba excel.
 
Grosso modo, en voici l'esprit :
1) j'ouvre un fichier texte contenant 5 colonnes (colonne1 : standard, colonne2 : standard, colonne3 : #0.00, colonne4 : date et colonne5 :  date).
2) je stocke l'ensemble du fichier dans une matrice: Dim col(10000, 1 To 5) As Variant
3) je recopie sur mon classeur les 5 premières colonnes et effectue un calcul de soustraction pour évaluer un délai entre la colonne 5 et 4, tel que :
 
For i = 1 To nb
    Range("A" & i + 2).Value = col(i, 1)
    Range("A" & i + 2).BorderAround Weight:=xlThin
    Range("A" & i + 2).HorizontalAlignment = xlCenter
    Range("B" & i + 2).Value = col(i, 2)
    Range("B" & i + 2).BorderAround Weight:=xlThin
    Range("B" & i + 2).HorizontalAlignment = xlCenter
    Range("C" & i + 2).Value = col(i, 3)
    Range("C" & i + 2).BorderAround Weight:=xlThin
    Range("C" & i + 2).NumberFormat = "#,##0.00"
    Range("D" & i + 2).Value = col(i, 4)
    Range("D" & i + 2).BorderAround Weight:=xlThin
    Range("D" & i + 2).HorizontalAlignment = xlCenter
    Range("E" & i + 2).Value = col(i, 5)
    Range("E" & i + 2).BorderAround Weight:=xlThin
    Range("E" & i + 2).HorizontalAlignment = xlCenter
   Range("F" & i + 2).Value = col(i, 5) - col(i, 4)
    Range("F" & i + 2).BorderAround Weight:=xlThin
    Range("F" & i + 2).HorizontalAlignment = xlCenter
         
Next

 
Ce code passe impeccable sur Excel version < 2003 mais dès qu'il est exécuté sur cette version, il me retourne un message d'erreur "erreur d'exécution 13' incompatibilité de type !!   :pt1cable:  
Quelqu'un peut m'expliquer ce bug et la façon de le contourner SVP car je ne pige pas !!
 
Merci d'avance, Gaston53.


Message édité par gaston53 le 11-08-2004 à 09:42:50
Reply

Marsh Posté le 11-08-2004 à 08:23:01   

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed