Boite de dialogue "EditBox" vers cellule Excel

jeronimo38 Messages postés 5 Date d'inscription lundi 18 janvier 2010 Statut Membre Dernière intervention 19 janvier 2010 - 18 janv. 2010 à 13:37
jeronimo38 Messages postés 5 Date d'inscription lundi 18 janvier 2010 Statut Membre Dernière intervention 19 janvier 2010 - 19 janv. 2010 à 09:05
Bonjour,

J'essaie de faire une petite application sous excel et je bloque sur un point :
J'ai crée un feuille "boite de dialogue" dans laquelle il y a des "EditBox".
Je voudrais quand je valide la boite de dialogue par un bouton, que le contenu entré dans l'EditBox puisse être recopié dans une cellule de feuille excel afin que je puisse utiliser la donnée saisie.

Auriez-vous une marco qui puisse faire ça car je sèche.

Merci

8 réponses

fohaf Messages postés 60 Date d'inscription vendredi 14 novembre 2003 Statut Membre Dernière intervention 6 septembre 2012 2
18 janv. 2010 à 14:42
Bonjour,

pour accéder au contenu de ton EditBox, il faut utiliser la propriété
ActiveDialog.EditBoxes("Nom de ton EditBox").Text


Je te conseillerais quand même de regarder pour créer un Userform sous VBA, tu auras plus de possibilités
0
jeronimo38 Messages postés 5 Date d'inscription lundi 18 janvier 2010 Statut Membre Dernière intervention 19 janvier 2010
18 janv. 2010 à 14:49
Bonjour fohaf,

Merci pour l'aide,par contre je n'arrive toujours pas à copier vers la cellule, la première partie est fausse et j'ai essayé plusieurs solutions comme par exemple :
Sheets("catégorie").Range("E62").value = ActiveDialog.EditBoxes("Edit Box 7").Text

POur l'userform, je vais essayer mais faudra tout que je reprenne l'application.
0
fohaf Messages postés 60 Date d'inscription vendredi 14 novembre 2003 Statut Membre Dernière intervention 6 septembre 2012 2
18 janv. 2010 à 15:33
ça devrait fonctionner pourtant
Essaye déjà
MsgBox ActiveDialog.EditBoxes("Edit Box 7").Text 

pour vérifier que tu récupères bien ta valeur

Sinon vérifie le nom de ta feuille (majuscule, accent...)
0
jeronimo38 Messages postés 5 Date d'inscription lundi 18 janvier 2010 Statut Membre Dernière intervention 19 janvier 2010
18 janv. 2010 à 16:04
MsgBox ne fonctionne pas:
Erreur de compilation / erreur de syntaxe.


Je désespère et me demande si c'est possible
0

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

Posez votre question
fohaf Messages postés 60 Date d'inscription vendredi 14 novembre 2003 Statut Membre Dernière intervention 6 septembre 2012 2
18 janv. 2010 à 16:16
Il faudrait que tu montres ton code pour qu'on voit ce qui ne va pas
0
jeronimo38 Messages postés 5 Date d'inscription lundi 18 janvier 2010 Statut Membre Dernière intervention 19 janvier 2010
18 janv. 2010 à 17:36
Je te fais suivre la macro complete, c'est la dernière ligne qui pose Pb, je veux en fait copier le texte de la boite editBox vers la cellule Catégorie E62, mais impossible. C'est le dernier point qui me bloque.


Sub Bouton2_QuandClic()
Dim LASTLIG As Integer
'Vérifie les valeurs nulles
If Sheets("catégorie").Range("A29") = "1" Then MsgBox ("Choisir un compte"): End
If Sheets("catégorie").Range("A50") = "1" Then MsgBox ("Entrer un mode de paiement"): End
If Sheets("catégorie").Range("D29") = "1" Then MsgBox ("Entrer une catégorie"): End
If Sheets("catégorie").Range("C29") = "1" Then MsgBox ("Entrer une Sous-catégorie"): End
If Sheets("catégorie").Range("C32") = "" Then MsgBox ("Entrer le jour"): End

'Choix de l'onglet de W
If Sheets("catégorie").Range("A50") = "2" Then
LASTLIG = Sheets("Livre de compte").Range("A65536").End(xlUp).Row + 1
Sheets("livre de compte").Select
Else
LASTLIG = Sheets("Compte joint").Range("A65536").End(xlUp).Row + 1
Sheets("Compte joint").Select
End If

With ActiveSheet

'Recopie les données sur l'onglet "tampon 'Catégorie"
.Range("B" & LASTLIG) = Sheets("catégorie").Range("D30").Value
.Range("C" & LASTLIG) = Sheets("catégorie").Range("C30").Value
If Sheets("catégorie").Range("C41") = "VRAI" Then
.Range("D" & LASTLIG) = "x"
Else
.Range("D" & LASTLIG) = ""
End If
If Sheets("catégorie").Range("A29") "9" Then .Range("F" & LASTLIG) Sheets("catégorie").Range("h32").Value Else .Range("E" & LASTLIG) = Sheets("catégorie").Range("h32").Value
.Range("G" & LASTLIG).FormulaR1C1 = "=R[-1]C-RC[-2]+RC[-1]"
.Range("H" & LASTLIG) = Sheets("catégorie").Range("A30").Value
.Range("I" & LASTLIG) = Sheets("catégorie").Range("f32").Value
.Range("J" & LASTLIG) = Sheets("catégorie").Range("i32").Value
.Range("L" & LASTLIG) = Sheets("catégorie").Range("A52").Value
.Range("M" & LASTLIG) = Sheets("catégorie").Range("A53").Value
.Range("N" & LASTLIG) = Sheets("catégorie").Range("C32").Value
.Range("O" & LASTLIG) = Sheets("catégorie").Range("d32").Value
.Range("P" & LASTLIG) = Sheets("catégorie").Range("e32").Value
.Range("A" & LASTLIG).FormulaR1C1 = "=DATE(RC[15],RC[14],RC[13])"
.Range("A" & LASTLIG).Select
Selection.Copy
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
End With

'va au début de la dernière ligne
ActiveCell.SpecialCells(xlLastCell).Select
Selection.End(xlToLeft).Select
Selection.End(xlToLeft).Select
Range("A" & LASTLIG).Select

'Probleme pour copier l'EditBox Remarque

Sheets("Catégorie").Range("E62").Text = ActiveDialog.EditBoxes("Edit Box 7").Text


End Sub
0
fohaf Messages postés 60 Date d'inscription vendredi 14 novembre 2003 Statut Membre Dernière intervention 6 septembre 2012 2
18 janv. 2010 à 18:56
Chez moi, en remplaçant
Sheets("Catégorie").Range("E62").Text = ActiveDialog.EditBoxes("Edit Box 7").Text 

par
Sheets("catégorie").Range("E62").Value = ActiveDialog.EditBoxes("Edit Box 7").Text

ça fonctionne

As-tu bien vérifié que ton EditBox s'appelle bien "Edit Box 7"?
0
jeronimo38 Messages postés 5 Date d'inscription lundi 18 janvier 2010 Statut Membre Dernière intervention 19 janvier 2010
19 janv. 2010 à 09:05
Merci Fohaf pour ton aide ,
ça marche enfin. effectivement il fallait remplacer Text par value, et également activedialog par DialogSheets...

Sheets("catégorie").Range("E62").Value = DialogSheets("Dialogue1").EditBoxes("Edit Box 7").Text
0
Rejoignez-nous