Column et row

[Résolu]
Signaler
Messages postés
623
Date d'inscription
mardi 20 mars 2007
Statut
Membre
Dernière intervention
15 juin 2010
-
Messages postés
623
Date d'inscription
mardi 20 mars 2007
Statut
Membre
Dernière intervention
15 juin 2010
-
Slt je sais que pour connait la valeur d'une cellule d'un vaSpread, on peut faire:

Me.vaSpread.GetText Me.vaSpread.ActiveCol, Me.vaSpread.ActiveRow, test
Msgbox test

Maintenant je voudrai savoir comment on peut faire pour connaitre la valeur  d'une cellule x qui se trouve dans la meme ligne qu'une cellule y active.
les cellule x et y sont pas de la meme colonne mais sont de la meme ligne.
J'espére que je suis clair.
Pouvez-vous m'aider?

12 réponses

Messages postés
6786
Date d'inscription
vendredi 16 décembre 2005
Statut
Membre
Dernière intervention
21 décembre 2011
18
salut,

je connais pas ton vaSpread, mais vois si tu peux remplacer Me.vaSpread.ActiveCol directement par le numéro de la c olonne

@++

le mystérieux chevalier,"Provençal, le gaulois"
Forum Office & VBA
Messages postés
17288
Date d'inscription
mercredi 2 janvier 2002
Statut
Modérateur
Dernière intervention
27 septembre 2021
70
je viens de saisir...

ok, j'avais pas vu, a cause de ton addition qui me perturbait...

10-(5+3) => 10 - 5 - 3


Dim zVal As Variant
dim nVal as Double
Dim i As Integer
Me.vaSpread.GetText 2, vaSpread.ActiveRow, zVal
nVal = zVal
For i = 3 To vaSpread.ActiveCol
Me.vaSpread.GetText i, Me.vaSpread.ActiveRow, zVal
nVal = nVal - zVal
Next i
Me.label.Caption = nVal 'pour afficher le résultat dans un label
Messages postés
623
Date d'inscription
mardi 20 mars 2007
Statut
Membre
Dernière intervention
15 juin 2010

Ok ça marche:
Dim test As Variant
Me.va_AE1.Col = 2
Me.va_AE1.GetText 2, Me.va_AE1.ActiveRow, test
    Msgbox test
 mais j'en ai une autre:
par exemple j'ai 6 colonnes, je veux si je clique sur une cellule de la colonne 4, il m'affiche la valeur de la colonne 2  de la ligne correspondante - la cellule de la ligne correspondante de la colonne 2.
Et si je clique sur une cellule de la colonne 5, il m'affiche la valeur de la colonne 2  de la ligne correspondante - (la cellule de la ligne correspondante de la colonne 3 + la cellule de la ligne correspondante de la colonne 3) et ainsi de suite.
colonne 2 colonne3 colonne4 colonne5 colonne6
10            5               3               2            4

sije clique sur 4 il m'affiche (10-5), si je clique sur 2 il m'affiche (10-(5+3)) et ainsi de suite jusqu'à par exemple la ligne n (10 par exemple)
Messages postés
17288
Date d'inscription
mercredi 2 janvier 2002
Statut
Modérateur
Dernière intervention
27 septembre 2021
70
pas compris un traitre mot de ta requête.
mais alors rien !
Messages postés
623
Date d'inscription
mardi 20 mars 2007
Statut
Membre
Dernière intervention
15 juin 2010

j'ai des colonnes de mon vaSpread comme suit:
colonne2  colonne3 colonne4  colonne5   colonne6
10                5               3               2            4

sije
clique sur la cellule ou se trouve la valeur (3) il m'affiche (10-5), si je clique la cellule ou se trouve la valeur (2) il m'affiche
le résultat de (10-(5+3)) et ainsi de suite jusqu'à par exemple la ligne n.

tu as compris ce que je veux dire?
Messages postés
623
Date d'inscription
mardi 20 mars 2007
Statut
Membre
Dernière intervention
15 juin 2010

j'ai commencé à faire comme suit mais ça marche pas:

Dim test As Variant
Dim test1 As Variant
Dim i As Integer
'Me.vaSpread.GetText Me.vaSpread.ActiveCol, Me.vaSpread.ActiveRow, test
Me.vaSpread.GetText 2, Me.vaSpread.ActiveRow, test
For i = 4 To 10
Me.vaSpread.GetText i, Me.vaSpread.ActiveRow, test1
Next i
    Me.label.Caption = test - test1   'pour afficher le résultat dans un label
Messages postés
17288
Date d'inscription
mercredi 2 janvier 2002
Statut
Modérateur
Dernière intervention
27 septembre 2021
70
For i = 4 To 10
Me.vaSpread.GetText i, Me.vaSpread.ActiveRow, test1
Next i

tu ecrase a chaque itération de ta boucle la valeur de test1...
Messages postés
17288
Date d'inscription
mercredi 2 janvier 2002
Statut
Modérateur
Dernière intervention
27 septembre 2021
70
tu m'a ressortis le même charabia...

et les autres colonnes ?
que se passe-t'il si je cliques sur la colonne6 ?
pourquoi parles tu de ligne 'n' ? quel rapport avec les lignes ? Ne considère-t'on pas uniquement la ligne active ?

quel point te bloque ? ça semble d'une difficulté assez relative... vu que tu sais récupèrer le texte d'une cellule donnée, que tu sais quelle est la cellule active...
lire la doc pourrait t'aider:
http://www.fpoint.com/products/spread/devtour/tourmain.aspx
Messages postés
623
Date d'inscription
mardi 20 mars 2007
Statut
Membre
Dernière intervention
15 juin 2010

Avec ce qui suit , ça me fait bien la soustraction de la valeur de la cellule correspondante qui se trouve dans la colonne 2 -  la valeur de la cellule active.

Dim test As Variant
Dim test1 As Variant

Me.vaSpread.GetText 2, Me.vaSpread.ActiveRow, test
Me.vaSpread.GetText Me.vaSpread.ActiveCol, Me.vaSpread.ActiveRow, test1
Me.maxi.Caption = test - test1

Mais ce que je veux c'est si la cellule de la colonne 4 est active, il me mets la valeur de la cellule correspondante de la colonne2 - la valeur correspondante de la cellule 3.
Et si c'est la cellule de la colonne 5 est active, il me mets la valeur de la
cellule correspondante de la colonne2 - (la valeur correspondante de la
cellule 3+ la valeur correspondante de la
cellule 4)
Messages postés
623
Date d'inscription
mardi 20 mars 2007
Statut
Membre
Dernière intervention
15 juin 2010

Merci beaucoup.
ça marche nikel.
Messages postés
623
Date d'inscription
mardi 20 mars 2007
Statut
Membre
Dernière intervention
15 juin 2010

il y a un petit soucis, je ne veux pas qu'il soustrait la valeur de la cellule mais les valeurs des cellules d'avant.
J'espére que vous m'avez compris.
Messages postés
623
Date d'inscription
mardi 20 mars 2007
Statut
Membre
Dernière intervention
15 juin 2010

c bon j'ai fait
For i = 3 To va_AE1.ActiveCol - 1
    Me.va_AE1.GetText i, Me.va_AE1.ActiveRow, zVal
    nVal = nVal - zVal
Next i