Bouton Enregistrer Spécifique et bouton quitter

Résolu
zibou85 Messages postés 10 Date d'inscription mercredi 24 mai 2006 Statut Membre Dernière intervention 19 septembre 2006 - 2 juin 2006 à 10:30
zibou85 Messages postés 10 Date d'inscription mercredi 24 mai 2006 Statut Membre Dernière intervention 19 septembre 2006 - 6 juin 2006 à 13:14
bonjour, je tiens à vous remercier pour les reponses pour mon autre poste et je vais les etudier.

Pour ce poste, ca fait un jour que je lutte et cela ne fonctionne pas.

J'ai créé un bouton "enregistrer" et un bouton "quitter"
 jusque la ca. lol

le bouton enregistrer :
j'ai besoin de selectionner le nom du client qui se situe sur la premiere ligne à partir de la 9è lettre sur 23 lettres maxi car le nom du client servira pour enregistrer le fichier.
Mes problèmes:
je n'arrive pas mettre le pointeur au départ de la page
Impossible de recuperer la valeur que j'ai copier dans un champ texte

mon code source:
Public Sub CommandButton1_Click()
Dim nom As String
'Dim mazero As Object
'remettre le focus au debut
'Call PlaceSouris(mazero)


Selection.MoveRight Unit:=wdCharacter, Count:=9
Selection.MoveRight Unit:=wdCharacter, Count:=23, Extend:=wdExtend
Selection.Font.Bold = wdToggle
Selection.Copy
'nom =


ChangeFileOpenDirectory "S:\Suivi travaux en cours"
    ActiveDocument.SaveAs FileName:=nom & ".doc", FileFormat:=wdFormatDocument, _
        LockComments:=False, Password:="", AddToRecentFiles:=True, WritePassword _
        :="", ReadOnlyRecommended:=False, EmbedTrueTypeFonts:=False, _
        SaveNativePictureFormat:=False, SaveFormsData:=False, SaveAsAOCELetter:= _
        False
End Sub

Pour le bouton "Quitter"
Je veux juste faire juste poser la question : "Voulez vous sauvegarder avant de quitter"
puis bouton "oui", j'appelle la fonction du bouton sauvegarder et je quitte donc ca va
et bouton "non", je quitte
et bouton "annuler", j'enleve mon message.
donc ca devrait aller

je vous remercie de votre aide.

9 réponses

jrivet Messages postés 7392 Date d'inscription mercredi 23 avril 2003 Statut Membre Dernière intervention 6 avril 2012 60
2 juin 2006 à 10:37
Salut,

Pour la seconde partie;

Option Explicit 

Private Sub CmdQuitter_Click() 
Select Case MsgBox("Voulez vous enregistrer avant de quitter", vbQuestion + vbYesNoCancel) 
    Case vbYes: Call Enregistrer  'L'utilisateur a appuye sur Oui
    Case vbNo: Call FinProgramme  'L'utilisateur a appuye sur Non
    Case vbCancel:                'L'utilisateur a appuye sur Annuler
End Select 
End Sub 

Private Sub Enregistrer() 
'Procedure pour enregistrer les changements
MsgBox "enregistrer" 
Call FinProgramme 
End Sub 

Private Sub FinProgramme() 
'Procedure de fin de programme
MsgBox "quitter" 
End 
End Sub 

 

<small> Coloration syntaxique automatique [AFCK]</small>
       

Pour la premiere partie: Quel tyope de controle est ton champs d'origine?

@+, Julien
Pensez: Moteur de Recherche, Réponse Acceptée
3
zibou85 Messages postés 10 Date d'inscription mercredi 24 mai 2006 Statut Membre Dernière intervention 19 septembre 2006
2 juin 2006 à 10:59
merci, j'ai juste ajouter
Call CommandButton1_Click dans le bouton enregistrer

maintenant il me reste le plus dur
3
billoute 50 Messages postés 76 Date d'inscription lundi 20 mars 2006 Statut Membre Dernière intervention 30 octobre 2007 2
2 juin 2006 à 11:00
Tu as pensé à la fonction mid?
Mid(WdCharacter, 9, 23)
3
zibou85 Messages postés 10 Date d'inscription mercredi 24 mai 2006 Statut Membre Dernière intervention 19 septembre 2006
2 juin 2006 à 11:46
donc voila la modif :

'Selection.MoveRight Unit:=wdCharacter, Count:=9
'Selection.MoveRight Unit:=wdCharacter, Count:=23, Extend:=wdExtend
'Selection.Font.Bold = wdToggle
'Selection.Copy
nom = Mid(wdCharacter, 9, 23)

mais en réponse de la chaine "nom" j'ai rien alors que sur la ligne j'ai du texte sur les 50 premiers caractères de la ligne 1

Ca vient peut etre du wdCharacter, je cherche

merci je connaissais pas cette fonction
3

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

Posez votre question
jrivet Messages postés 7392 Date d'inscription mercredi 23 avril 2003 Statut Membre Dernière intervention 6 avril 2012 60
2 juin 2006 à 12:03
Salut,

Je crois qu il y a une petite erreur dans les paramètres passés a la fonction Mid/

wdCharacter doit  etre remplacer par la chaine de caractère de la ligne 1.

Exemple

Dim Ligne1 As String 
Dim Nom As String 
Ligne1 = "Bonjour ceci est un test pour la fonction mid, enfin j'espere" 
Nom = Mid(Ligne1, 9, 23) 
MsgBox Nom 
 

<small> Coloration syntaxique automatique [AFCK]</small>
       

@+, Julien
Pensez: Moteur de Recherche, Réponse Acceptée
3
billoute 50 Messages postés 76 Date d'inscription lundi 20 mars 2006 Statut Membre Dernière intervention 30 octobre 2007 2
2 juin 2006 à 12:09
oui dans le mid le premier paremetre est une chaine de caractere, le second est le point de départ et le troisième est la longueur.
Bien entendu tu peu mettre des variable qui respecte ces format mid(string,integer,integer)
3
zibou85 Messages postés 10 Date d'inscription mercredi 24 mai 2006 Statut Membre Dernière intervention 19 septembre 2006
6 juin 2006 à 09:08
merci pour ces réponses.
Maintenant le problème est donc de récupérer la ligne n°1 dans word pour l'affecter au champ "ligne1". tout en sachant que le texte ne sera pas le même à chaque ouverture de ce document donc impossibilité de noté la phrase dans vb.
3
jrivet Messages postés 7392 Date d'inscription mercredi 23 avril 2003 Statut Membre Dernière intervention 6 avril 2012 60
6 juin 2006 à 11:26
Salut,

N'ayant jamais accédé à des documents Word depuis VB6, je ne peux que te proposer d'effectuer une recherche sur le forum (si ce n'est pas déjà fait.)

@+, Julien
Pensez: Moteur de Recherche, Réponse Acceptée
3
zibou85 Messages postés 10 Date d'inscription mercredi 24 mai 2006 Statut Membre Dernière intervention 19 septembre 2006
6 juin 2006 à 13:14
deja fait et rien trouvé.
si quelqu'un aurait une idée
3
Rejoignez-nous