Ecrire à l'ntersection de ligne et colonne

Résolu/Fermé
Erock - 31 déc. 2009 à 17:27
Erock49 Messages postés 10 Date d'inscription samedi 2 janvier 2010 Statut Membre Dernière intervention 3 janvier 2010 - 3 janv. 2010 à 00:12
Bonjour,

J'ai lu différents sujets concernant ma question mais aucune réponse ne me satisfait...


Je voudrais écrire à l'intersection d'une ligne et d'une colonne :

En selectionnant la colonne et la ligne (par les résultats des textbox (ou listbox à voir si c'est mieux))

Puis écrire dans cette case le résultat d'une autre textbox.

Image :

http://img109.imageshack.us/content.php?page=done



Merci d'avance
A voir également:

35 réponses

moiced59 Messages postés 1145 Date d'inscription samedi 15 novembre 2008 Statut Membre Dernière intervention 18 août 2014 60
31 déc. 2009 à 18:42
c koi ton lien?
0
moiced59 Messages postés 1145 Date d'inscription samedi 15 novembre 2008 Statut Membre Dernière intervention 18 août 2014 60
31 déc. 2009 à 19:12
tiens ceci peut interesser

i = InputBox("a quel ligne souhaitez vous ecrire?")
j =InputBox("a quel colonne souhaitez vous ecrire?")

Message = InputBox("que souhaitez vous ecrire?")
Range((j) & (i)).Value = Message
0
Rebonjour et bonne année :D :

Le lien c'était une image mais le lien n'est pas bon.

moiced59, j'ai essayé, mais il aime pas la dernière ligne de code

Mais il aime pas la dernière ligne du programme : Range((j) & (i)).Value = Message

:/

Et ce programme n'interrogera que les noms de colonnes genre A, B, ZA... ?

Je remets un lien de l'image en espérant que ca marche :

http://img43.imageshack.us/img43/9756/sanstitremn.jpg
0
moiced59 Messages postés 1145 Date d'inscription samedi 15 novembre 2008 Statut Membre Dernière intervention 18 août 2014 60
1 janv. 2010 à 15:09
Oui je l ai modifié un peu je te donne le new

ligne:
i = InputBox("a quel ligne souhaitez vous ecrire?")
If IsNumeric(i) Then
Else
MsgBox "Vous devez indiquer une ligne au format numerique"
GoTo ligne
End If

colonne:
j = InputBox("a quel colonne souhaitez vous ecrire?")
If IsNumeric(j) Then
MsgBox "Vous devez indiquer une colonne au format texte"
GoTo colonne
End If

Message = InputBox("que souhaitez vous ecrire?")
Range((j) & (i)).Value = Message
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Peut on dire:

'entre le nom du produit' >> ca trouve la ligne ou il y a ce produit

'entrez le nom de la semaine' >>> ca trouve la colonne ou il y a la semaine

Et apres écriture dans cette case.



Ca éviterait de chercher la ligne et la colonne.



Merci encore ;)
0
moiced59 Messages postés 1145 Date d'inscription samedi 15 novembre 2008 Statut Membre Dernière intervention 18 août 2014 60
1 janv. 2010 à 18:40
oui c possible!!!
il faut modifier un peu le code comment se presente ton fichier explique moi bien kon ne recommence pas a chaque fois
0
Ok : donc

Un utilisateur désire passer une commande d'un produit à une certaine semaine:

Donc dans un tableau on retrouve dans une colonne les noms de produits et sur une ligne les semaines (1 à 52)

Et je voudrais que par l'interface VBA on interroge l'utilisateur sur la commande qu'il désir faire :
on lui demande donc le produit qu'il veut commander (donc ca trouve la ligne du tableau)
on lui demande la semaine (ca trouve la colonne) et donc dans la cellule correspondante l'utilisateur entre la quantité de la commande qu'il désire faire.


J'avais essayé les fonctions intersect et Vlookup (solutions trouvées à des problèmes similaires sur le forum) mais vu que je ne suis pas calé en VBA ca ne marchait pas.



Désolé je me suis mal exprimé :/ .
0
moiced59 Messages postés 1145 Date d'inscription samedi 15 novembre 2008 Statut Membre Dernière intervention 18 août 2014 60
1 janv. 2010 à 19:46
voila

saisie = InputBox("quel nom de produit recherchez vous?")
saisie2 = Val(InputBox("quel numero de semaine recherchez vous?"))

y = Worksheets("feuil1").Cells(1, "A").End(xlDown).Row + 1
i = 1

Do Until i = y
If saisie = Cells(i, 1).Value Then
Z = i
GoTo b
Else
i = i + 1
End If
Loop
If i = y Then
MsgBox "aucune concordance pour le produit de trouvé "
Exit Sub
End If
b:
c = 2
Do Until c = 52
If saisie2 = Cells(Z, c).Value Then
MsgBox "Ligne trouvé"
Cells(Z, c).Select
Exit Sub
Else
c = c + 1
End If
Loop

If c = 30 Then
MsgBox "aucune concordance pour la semaine de trouvée "
Exit Sub
End If
0
moiced59 Messages postés 1145 Date d'inscription samedi 15 novembre 2008 Statut Membre Dernière intervention 18 août 2014 60
1 janv. 2010 à 19:58
juste une petite modif le c de la fin c pas 30 mais 52
0
La cellule qui fait l'intersection des deux données c'est bien Cells(z, C) ?

Sinon le programme m'affiche toujours la msgbox: MsgBox ("aucune concordance pour la semaine de trouvée ")


Est ce qu'il faudrait définir C comme tu as défini Y (y = Worksheets("feuil1").Cells(1, "A").End(xlDown).Row + 1) en remplaçant par les termes qui conviennent ?



Merci encore pour ton aide en tout cas !
0
moiced59 Messages postés 1145 Date d'inscription samedi 15 novembre 2008 Statut Membre Dernière intervention 18 août 2014 60
2 janv. 2010 à 10:27
bah vu ton explication je t explique ce que fais le programme

il compte d 'abord combien de produit tu as ?
puis:
il cherche si ta saisie = a un des produits si oui il regarde ds la meme ligne et regarde colonne par colonne si il trouve le numero de semaine

pour t colonne pas besoin de les numeroté c peut etre 53 pas 52 si ta 1ere colonne c tes nom de produit
0
MMMMMMmmm

En tout cas il me met toujours la msgbox :/
Et il ne met jamais celle comme quoi il a touvé la ligne :/
0
moiced59 Messages postés 1145 Date d'inscription samedi 15 novembre 2008 Statut Membre Dernière intervention 18 août 2014 60
2 janv. 2010 à 15:18
poste ton fichier
0
Comment je fais ? :s
0
moiced59 Messages postés 1145 Date d'inscription samedi 15 novembre 2008 Statut Membre Dernière intervention 18 août 2014 60
2 janv. 2010 à 16:19
va sur cijoint.fr
0
Erock49 Messages postés 10 Date d'inscription samedi 2 janvier 2010 Statut Membre Dernière intervention 3 janvier 2010
2 janv. 2010 à 16:49
http://www.cijoint.fr/cjlink.php?file=cj201001/cijowWvD0m.xlsm
0
moiced59 Messages postés 1145 Date d'inscription samedi 15 novembre 2008 Statut Membre Dernière intervention 18 août 2014 60
2 janv. 2010 à 17:04
Ah je comprend mieux !!!!!

ok le code né pas bon je croyais que tu voulais la colonne ou etait ecris 52 par exemple mais c pas ca g compris je fais la modif
0
moiced59 Messages postés 1145 Date d'inscription samedi 15 novembre 2008 Statut Membre Dernière intervention 18 août 2014 60
2 janv. 2010 à 17:24
ton formulaire fou la merde!!
car tu ne peux pas selectionné une cellule si formulaire ouvert supprime le

Worksheets("Feuil1").Activate

saisie = InputBox("quel nom de produit recherchez vous?")
h:
saisie2 = Val(InputBox("quel numero de semaine recherchez vous?")) + 1
If saisie2 > 52 Or saisie < 1 Then
MsgBox "saisie interdite!!! veuillez recommencer"
GoTo h
End If
y = Worksheets("feuil1").Cells(4, "A").End(xlDown).Row + 1
i = 4

Do Until i = y
If saisie = Cells(i, 1).Value Then
Cells(i, saisie2).Activate
Exit Sub
Else
i = i + 1
End If
Loop
If i = y Then
MsgBox "aucune concordance trouvé "
Exit Sub
End If
0
Erock49 Messages postés 10 Date d'inscription samedi 2 janvier 2010 Statut Membre Dernière intervention 3 janvier 2010
2 janv. 2010 à 17:34
Ok ca marche impec ! Merci beaucoup !

Dernière question si je veux écrire dans cette case par le biais d'une inputbox je fais comment ?
0
moiced59 Messages postés 1145 Date d'inscription samedi 15 novembre 2008 Statut Membre Dernière intervention 18 août 2014 60
2 janv. 2010 à 17:41
bah c ce que je viens de faire !!!!

il faut virer ton formulaire et mettre unne inputbox
0