VBA - Sélectionner une valeur
Fermé
nobilis
-
21 mars 2005 à 12:13
Armojax Messages postés 1858 Date d'inscription mercredi 19 janvier 2005 Statut Membre Dernière intervention 22 mars 2024 - 21 mars 2005 à 15:05
Armojax Messages postés 1858 Date d'inscription mercredi 19 janvier 2005 Statut Membre Dernière intervention 22 mars 2024 - 21 mars 2005 à 15:05
A voir également:
- VBA - Sélectionner une valeur
- Excel renvoyer la valeur d'une cellule en fonction d'une autre - Forum Logiciels
- Logiciel gratuit calcul valeur nutritionnelle - Télécharger - Santé & Bien-être
- Find vba - Astuces et Solutions
- Incompatibilité de type vba ✓ - Forum Programmation
- Vba ouvrir un fichier excel avec chemin ✓ - Forum VB / VBA
1 réponse
Armojax
Messages postés
1858
Date d'inscription
mercredi 19 janvier 2005
Statut
Membre
Dernière intervention
22 mars 2024
1 527
21 mars 2005 à 15:05
21 mars 2005 à 15:05
Hello nobilis,
En gros je vois ce que tu veux faire, mais j'ai un doute sur : Dim tabPremCol(0 To 49, 1). Si tu veux mettre dans ce tableau une valeur par ligne, pourquoi le définis-tu avec 2 dimensions ? Il me semble que Dim tabPremCol(0 To 49) suffirait, non ?
Autre question : est-ce bien nécessaire de gérer un tabeau à occurrences variables ? Est-ce que Dim tabCol(49, 23) ne suffirait pas ? (c'est juste une question, ça peut être tout-à-fait justifié pour ton problème précis).
Pour extraire la première valeur non nulle d'une ligne, il suffit d'écrire :
En passant, fais gaffe à tes définitions de variables. Quand tu écris :
seul y est défini comme Integer, le reste est considéré comme variant par défaut (erreur courante).
On peut définir plusieurs variables dans un même Dim, mais il faut préciser le type pour chaque variable :
Dim A As Integer, B As Integer, C As String, D As Worksheet etc.
En tout cas, essaie et regarde si ça marche
Ajx.
En gros je vois ce que tu veux faire, mais j'ai un doute sur : Dim tabPremCol(0 To 49, 1). Si tu veux mettre dans ce tableau une valeur par ligne, pourquoi le définis-tu avec 2 dimensions ? Il me semble que Dim tabPremCol(0 To 49) suffirait, non ?
Autre question : est-ce bien nécessaire de gérer un tabeau à occurrences variables ? Est-ce que Dim tabCol(49, 23) ne suffirait pas ? (c'est juste une question, ça peut être tout-à-fait justifié pour ton problème précis).
Pour extraire la première valeur non nulle d'une ligne, il suffit d'écrire :
For I = 0 To 49 For J = 0 To 23 If tabCol(I, J) <> 0 Then tabPremCol(I) = tabCol(I, J) Exit For ' fait sortir de la boucle dès qu'on a trouvé End If Next J Next I
En passant, fais gaffe à tes définitions de variables. Quand tu écris :
Dim tabCol(0 To 49, 0 To 23), x, y As Integer
seul y est défini comme Integer, le reste est considéré comme variant par défaut (erreur courante).
On peut définir plusieurs variables dans un même Dim, mais il faut préciser le type pour chaque variable :
Dim A As Integer, B As Integer, C As String, D As Worksheet etc.
En tout cas, essaie et regarde si ça marche
Ajx.