Bouton Enregistrer Spécifique et bouton quitter [Résolu]

Signaler
Messages postés
10
Date d'inscription
mercredi 24 mai 2006
Statut
Membre
Dernière intervention
19 septembre 2006
-
Messages postés
10
Date d'inscription
mercredi 24 mai 2006
Statut
Membre
Dernière intervention
19 septembre 2006
-
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

Messages postés
7393
Date d'inscription
mercredi 23 avril 2003
Statut
Membre
Dernière intervention
6 avril 2012
50
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
Messages postés
10
Date d'inscription
mercredi 24 mai 2006
Statut
Membre
Dernière intervention
19 septembre 2006

merci, j'ai juste ajouter
Call CommandButton1_Click dans le bouton enregistrer

maintenant il me reste le plus dur
Messages postés
76
Date d'inscription
lundi 20 mars 2006
Statut
Membre
Dernière intervention
30 octobre 2007
1
Tu as pensé à la fonction mid?
Mid(WdCharacter, 9, 23)
Messages postés
10
Date d'inscription
mercredi 24 mai 2006
Statut
Membre
Dernière intervention
19 septembre 2006

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
Messages postés
7393
Date d'inscription
mercredi 23 avril 2003
Statut
Membre
Dernière intervention
6 avril 2012
50
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
Messages postés
76
Date d'inscription
lundi 20 mars 2006
Statut
Membre
Dernière intervention
30 octobre 2007
1
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)
Messages postés
10
Date d'inscription
mercredi 24 mai 2006
Statut
Membre
Dernière intervention
19 septembre 2006

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.
Messages postés
7393
Date d'inscription
mercredi 23 avril 2003
Statut
Membre
Dernière intervention
6 avril 2012
50
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
Messages postés
10
Date d'inscription
mercredi 24 mai 2006
Statut
Membre
Dernière intervention
19 septembre 2006

deja fait et rien trouvé.
si quelqu'un aurait une idée