Garder les données dans la cellule et y rajouter des nouvelles [Résolu]

mikmak78 59 Messages postés vendredi 5 octobre 2012Date d'inscription 6 mars 2017 Dernière intervention - 8 oct. 2015 à 15:48 - Dernière réponse : mikmak78 59 Messages postés vendredi 5 octobre 2012Date d'inscription 6 mars 2017 Dernière intervention
- 14 oct. 2015 à 21:31
Bonjour,
Via un userform, je fais une completion de donnée

Dim f As Worksheet, plage As Range, ligne As Long

Private Sub ComboBox5_Click()

ligne = ComboBox5.ListIndex + plage.Row
Me.ComboBox1 = f.Cells(ligne, 7) 'zone
Me.Combobox2 = f.Cells(ligne, 8) 'equipement
Me.titre = f.Cells(ligne, 9) 'titre
Me.description = f.Cells(ligne, 10) 'description
Me.ComboBox4 = f.Cells(ligne, 3) 'statut
End Sub



Private Sub UserForm_Initialize()
Set f = Worksheets("gestionnaire_de_taches")
ligne = f.Range("B" & Rows.Count).End(xlUp).Row
Set plage = f.Range("b5:b" & ligne)
ComboBox5.RowSource = f.Name & "!" & plage.Address
End Sub

Private Sub enregistrer2_Click()
If ComboBox5.ListIndex = -1 Then
MsgBox "vous n'avez rien sélectionné !)"
Exit Sub
End If
Application.EnableEvents = False 'deprotege la feuille
If MsgBox("Voulez-vous modifier les informations du n° ID " & ComboBox5.List(ComboBox5.ListIndex) & " ?", _
vbQuestion + vbYesNo, "Modification") = vbYes Then
f.Range("G" & ligne) = ComboBox1.Text
f.Range("H" & ligne) = Combobox2.Text
f.Range("I" & ligne) = titre.Text
f.Range("J" & ligne) = description.Text
f.Range("F" & ligne) = commentaire.Text
f.Range("C" & ligne) = ComboBox4.Text
f.Range("F" & ligne) = VBA.Environ("username") & ":" & commentaire
f.Range("D" & ligne) = MonthView
f.Range("E" & ligne) = VBA.Environ("username")

Application.EnableEvents = True 'protege la feuille
Unload Me
End If
End Sub

Private Sub annuler_Click()
Unload Me
planificator.Hide
End Sub

mais voila mon probleme je souhaite dans la cellule "F & ligne" garder le commentaire existant du dernier utilisateur et que l'utilisateur suivant puisse rajouter (à la suite) les nouvelles données sans perdre les anciennes données.

merci de votre aide
Afficher la suite 

Votre réponse

18 réponses

ucfoutu 18039 Messages postés lundi 7 décembre 2009Date d'inscriptionModérateurStatut 11 avril 2018 Dernière intervention - 8 oct. 2015 à 17:34
0
Merci
Bonjour,
Pourquoi montrer tout ce code alors que ton problème n'est nullement concerné par ce que tu as cliqué dans la combobox ?
Il semble se résumer à l'inscription dans la cellule F & ligne du nom de l'utilisateur suivi de "":" et du contenu d'une textbox nommée commentaire.
Est-cela ?
et que veux-tu exactement ?
Exemple
si ligne = 8, qu'elle contient déjà toto : blablatoto
que souhaites-tu qu'elle contienne exactement après intervention nouvelle d'un utilisateur titi qui y rajouterai blablatiti ?
Essaye d'être très clair et de dire également ce que tu veux lorsque la cellule F8 est vide avant intervention de l'utilisateur titi.
Commenter la réponse de ucfoutu
mikmak78 59 Messages postés vendredi 5 octobre 2012Date d'inscription 6 mars 2017 Dernière intervention - 9 oct. 2015 à 11:36
0
Merci
Salut Ucfoutu
ce que je veux c'est que toto puisse mettre son commentaire, puis tata puisse mettre son commentaire puis titi puisse mettre son commentaire etc.... sans que les commentaires de toto, tata soit ecrasées par les commentaire de titi
Commenter la réponse de mikmak78
ucfoutu 18039 Messages postés lundi 7 décembre 2009Date d'inscriptionModérateurStatut 11 avril 2018 Dernière intervention - 9 oct. 2015 à 11:57
0
Merci
Tu n'as pas répondu avec précision !
Au départ : F8 est vide
toto saisit blablatoto ===>> F8 = "toto : blablatoto"
ensuite titi saisit blablatiti ===>>
Que doit alors TRES EXACTEMENT (écris-le) F8 ?
Commenter la réponse de ucfoutu
mikmak78 59 Messages postés vendredi 5 octobre 2012Date d'inscription 6 mars 2017 Dernière intervention - 9 oct. 2015 à 12:16
0
Merci
ok
F8="titi:blablatiti
(retour a la ligne)
toto : blablatoto"
Commenter la réponse de mikmak78
ucfoutu 18039 Messages postés lundi 7 décembre 2009Date d'inscriptionModérateurStatut 11 avril 2018 Dernière intervention - Modifié par ucfoutu le 9/10/2015 à 13:19
0
Merci
C'est tout ? Et c'est vraiment là un VRAI problème ? ===>>>
Range("A8").value =  VBA.Environ("username") & ":" & commentaire.text & chr(10) & Range("A8").value

Non ??????!!!!

Maintenant : reste à espérer que tu n'as pas beaucoup d'intervenants ajoutant un commentaire ... Car ta cellule risque fort d'être alors "débordée" ...
Et tu comptes lui donner quelle dimension de hauteur, à cette cellule ?
Il est à craindre, ami, que tu ne confondes la vocation d'un tableur (ce qu'est Excel) avec autre "chose" (qui va finir par te coûter très cher en mémoire et occupation du disque dur ) ....
________________________
Nul ne saurait valablement coder ce qu'il ne saurait exposer clairement.
mikmak78 59 Messages postés vendredi 5 octobre 2012Date d'inscription 6 mars 2017 Dernière intervention - 9 oct. 2015 à 13:35
non ca ne fonctionne pas
dans mon code
f.Range("F" & ligne) = VBA.Environ("username") & ":" & commentaire.Text & Chr(10) & Range("F" & ligne).Value

J'obtiens
"blablatoto
toto:blablatoto"
et le blabla de titi et tata a disparu
Commenter la réponse de ucfoutu
mikmak78 59 Messages postés vendredi 5 octobre 2012Date d'inscription 6 mars 2017 Dernière intervention - 9 oct. 2015 à 13:39
0
Merci
Il est à craiçndre, ami, que tu ne confondes un tableeur (ce qu'est Excel) avec autre "chose" ....

tu preches un converti mais voila , il y a des besoins client, des demandes boss et je suis au millieu :) je m'adapte
Commenter la réponse de mikmak78
cgandco 219 Messages postés mercredi 26 octobre 2011Date d'inscription 22 juin 2017 Dernière intervention - 9 oct. 2015 à 14:38
0
Merci
Bonjour,

dans ton code tu affectes deux fois t.RangeF & ligne)

f.Range("F" & ligne) = commentaire.Text
      f.Range("C" & ligne) = ComboBox4.Text
      f.Range("F" & ligne) = VBA.Environ("username") & ":" & commentaire.Text & Chr(10) & Range("F" & ligne).Value


ce qui fait que le commentaire a déjà été mal remplacé.

bonne journée
mikmak78 59 Messages postés vendredi 5 octobre 2012Date d'inscription 6 mars 2017 Dernière intervention - 12 oct. 2015 à 13:17
Salut cgandco
oui je sais mais c'etait pour monter Ucfoutu qu'en transposant sa proposition dans mon code ca ne fonctionnait pas.
Commenter la réponse de cgandco
mikmak78 59 Messages postés vendredi 5 octobre 2012Date d'inscription 6 mars 2017 Dernière intervention - 12 oct. 2015 à 13:19
0
Merci
Quelqu un a une autre proposition?
l'idée c est de reprendre les commentaires existants et de les "additionner" a ceux generer par le useform..
Commenter la réponse de mikmak78
ucfoutu 18039 Messages postés lundi 7 décembre 2009Date d'inscriptionModérateurStatut 11 avril 2018 Dernière intervention - 12 oct. 2015 à 15:28
0
Merci
Rhoooo ...
L'erreur dont te parle cgandco est ANTERIEURE à mon message .... que je t'invite à relire !
tu as à utiliser le code que je t'ai dit. Et à SUPPRIMER ce qu'a dénoncé fort justement cgandco.
Bref ...
Commenter la réponse de ucfoutu
0
Merci
ok j avais pas compris désolé...
Commenter la réponse de mikmak78
ucfoutu 18039 Messages postés lundi 7 décembre 2009Date d'inscriptionModérateurStatut 11 avril 2018 Dernière intervention - 13 oct. 2015 à 11:07
0
Merci
Bien...
Tu as su ouvrir cette discussion.
Il te reste à savoir la libérer (un clic sur le tag RESOLU) au niveau de ton premier message est la règle. Merci d'y penser.
Commenter la réponse de ucfoutu
0
Merci
mais le probleme n'est pas resolu??...
Commenter la réponse de mikmak78
ucfoutu 18039 Messages postés lundi 7 décembre 2009Date d'inscriptionModérateurStatut 11 avril 2018 Dernière intervention - 14 oct. 2015 à 10:25
0
Merci
Ah bon ?
Montre alors ton code, tel que corrigé !
Commenter la réponse de ucfoutu
mikmak78 59 Messages postés vendredi 5 octobre 2012Date d'inscription 6 mars 2017 Dernière intervention - 14 oct. 2015 à 19:02
0
Merci
f.Range("F" & ligne) = commentaire.Text  & Chr(10) & VBA.Environ("username") & ":" & Range("F" & ligne).Value

et cela ne fonctionne pas
Commenter la réponse de mikmak78
ucfoutu 18039 Messages postés lundi 7 décembre 2009Date d'inscriptionModérateurStatut 11 avril 2018 Dernière intervention - Modifié par ucfoutu le 14/10/2015 à 19:24
0
Merci
Ahy ?
Et qu'as-tu fait de ta ligne disant :
f.Range("F" & ligne) = commentaire.Text

si elle est toujours là, en dépit de ce que l'on t'en a dit, ma foi ...., c'est que tu ne comprends absolument rien de ce que tu écris !!!!

EDIT : et d'ailleurs que tu ne comprends pas non plus ce qui t'est dit !

________________________
Nul ne saurait valablement coder ce qu'il ne saurait exposer clairement.
Commenter la réponse de ucfoutu
mikmak78 59 Messages postés vendredi 5 octobre 2012Date d'inscription 6 mars 2017 Dernière intervention - 14 oct. 2015 à 21:31
0
Merci
je suis sincerement confu...j ai honte de mon poste...
1000 pardons
Commenter la réponse de mikmak78

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.