bug sur code VB sous 97

  • Initiateur de la discussion TITANIC
  • Date de début
T

TITANIC

Guest
Bonsoir à tous, merci le forum.
J'ai du code qui fonctionne très bien sous Excel 2003, mais lorsque je passe au boulot sous 97, le débogueur n'accepte pas une valeur ( dans ce cas il butte sur la valeur 'row'.
Le projet: une gestion de base de donnée,un userform avec un combobox pour rappeler des données et les modifier, la validation des modifications se faisant via un bouton. Le code:
.................................
le combobox:
Private Sub ComboBox1_Change()
' combobox d'appel des titres FA
Dim L As Integer, i As Integer
L = Sheets('feuil1').Range('A65536').End(xlUp).Row
For i = 2 To L
If Sheets('feuil1').Range('a' & i) = UserForm1.ComboBox1.Value Then
UserForm1.ComboBox4.Value = Sheets('Feuil1').Range('B' & i).Value
UserForm1.ComboBox5.Value = Sheets('feuil1').Range('C' & i).Value
UserForm1.TextBox9.Value = Sheets('feuil1').Range('D' & i).Value
End If
Next

End Sub
....................................
le bouton de validation:
Private Sub CommandButton4_Click()
Dim L As Integer, i As Integer
L = Sheets('feuil1').Range('A65536').End(xlUp).Row
For i = 2 To L
If Sheets('feuil1').Range('a' & i) = UserForm1.ComboBox1.Value Then
Sheets('feuil1').Range('A' & i).Select
ActiveCell.ClearContents
ActiveCell.Offset(0, 1).ClearContents
ActiveCell.Offset(0, 2).ClearContents
ActiveCell.Offset(0, 3).ClearContents

End If
Next
Unload UserForm1
Load UserForm1
UserForm1.Show
.................................
Qué passa ?????Quelqu'un voit il pourquoi 97 nereconnait pas la valeur 'row'?
Merci par avance
 
A

AV

Guest
Salut,

''....Dim L As Integer, i As Integer
L = Sheets('feuil1').Range('A65536').End(xlUp).Row...''

Les variables de type integer ont une valeur limitée à 32767 !
Déclare tes variables lignes de type Long ou...pas du tout !

AV
 
T

TITANIC

Guest
merci Pierre jean, merci AV.
Je suis de repos aujourd'hui, mais je teste vos propositions dès demain, sous 97.
AV a dit:
Les variables de type integer ont une valeur limitée à 32767 !
Déclare tes variables lignes de type Long ou...pas du tout !

Mon niveau sous VB étant assez limité pour l'instant, je pose la question ( un peu bête ):
pourquoi sous 2003 le code fonctionne t'il ?

En suivant l'idée de Pierre jean, Les variables de type integer ont une valeur limitée à 32767... sous 97 ?

Bien à vous.
 
T

TITANIC

Guest
Salut Michel.
Effectivement, je n'y es pas pensé ( et pourtant ça m'est arrivé sur un autre projet ..).Je pense que tu veux dire que le code inclu au début va retirer le contrôle au bouton. Je vais essayer.
Pour le message d'erreur, je n'ai pas la syntaxe précise mais il s'agit de 'row' créant problème avec 'range'.
Je suis inquiet car la totalité du projet est 'pensée', les userforms en place, ( on m'a beaucoup aidé sur le forum ) - mais au boulot la seule licence est 97.
Il faut que je trouve une soluce.
Merci encore pour ton post !!
 

Statistiques des forums

Discussions
312 229
Messages
2 086 426
Membres
103 206
dernier inscrit
diambote