Question sur Excel et bouton

Petit UP

Merci

re,

essaie :

If Range("I9") = "" Or Range("I10") = "" ......then

@+ Dan

Nad-Dan a écrit :

re,

essaie :

If Range("I9") = "" Or Range("I10") = "" ......then

@+ Dan

Peu t'on carrement mettre un message d'erreur par case, genre:

Sub MacroImpr() 
    If Range("D11") = "" Then 
        MsgBox "Champ date non renseigner" 
    Else
    If Range("D20") = "" Then 
        MsgBox "Champs kms non renseigner" 
    Else
    If Range("D30") = "" Then 
        MsgBox "Champs ville non renseigner" 
    Else
        ActiveWindow.SelectedSheets.PrintOut Copies:=1 
    End If 
End Sub

Mais mis ça, mais je sais que c'est faux, c'est un exemple que je cherche a faire.

Merci

capture d e cran 2016 07 18 a 15 13 14

re,

Si tu veux le faire comme cela fais quelques tests et regarde ce qui se passe mais pourquoi faire compliquer quand tu peux faire plus simple.

A vrai dire je ne comprends pas très bien ce que tu cherches à faire depuis le début de ce fil mais bon... donner un cours peut être ?..

If Range("I9") = "" Or Range("I10") = "" then msgbox "ton message"

Dan

Non, c'est pas un cours. C'est un fichier pour un collegue qui comprend rien au PC, et que sans arrete il fait des gaffe. Donc au fur et a messure que je fait son fichier et que je vois son utilisation, je rajoute certaine chose pour evité qu'il en fasse.

Nad-Dan a écrit :
If Range("I9") = "" Or Range("I10") = "" then msgbox "ton message"

Dan

Sa marche pas

Salut le forum

Pas esthétique mais ca fonctionne

Sub MacroImpr()
    If Range("D11") = "" Then
        MsgBox "Champ date non renseigner"
        Range("D11").Select
        Exit Sub
    End If
    If Range("D20") = "" Then
        MsgBox "Champs kms non renseigner"
        Range("D20").Select
        Exit Sub
    End If
    If Range("D30") = "" Then
        MsgBox "Champs ville non renseigner"
        Range("D30").Select
        Exit Sub
    End If
        ActiveWindow.SelectedSheets.PrintOut Copies:=1
End Sub

Tu pourrais à la limite vérifier la saise avec IsDate et IsNumeric.

Mytå

Merci pour le code, je l'ai un peu modifier car j'avais une erreur, j'ai mis:

Exemple:

Sub MacroImpr()
    If Range("I8") = "" Then
        MsgBox "Champ ville non renseigner"
        Range("I8").Select
        Exit Sub
    End If
    If Range("I9") = "" Then
        MsgBox "Champ Kms départ non renseigner"
        Range("I9").Select
        Exit Sub
    End If
    If Range("I10") = "" Then
        MsgBox "Champ Kms arrivé non renseigner"
        Range("I10").Select
        Exit Sub
    Else
        ActiveWindow.SelectedSheets.PrintOut Copies:=1
    End If
End Sub

La sa marche, apres, j'ai peu etre fait une erreur.

Pour le IsDate et le IsNumeric on fait comment ?

Comment on fait un msgbox pour aller a la ligne ?

Re le forum

Vcloclo, tu sembles ne pas comprendre les macros que l'on te donne.

Tu devrais joindre le fichier, tu n'as qu'à cliquer sur ce lien : Joindre un fichier pour que l'on puisse t'aider, et recopier l'adresse sur ta ficelle.

VCloClo a écrit :

Comment on fait un msgbox pour aller a la ligne ?

  • MsgBox ("Hello" & vbCrLf & "à" & vbCrLf & "Tous")

Une autre facon pour la macro:

Sub MacroImpr()
    Do Until Range("I8") <> ""
        Range("I8") = InputBox("Champ ville non renseigner")
            Loop

    Do Until Range("I9") <> "" And IsNumeric(Range("I9"))
        Range("I9") = InputBox("Champ Kms départ non renseigner")
            Loop

    Do Until Range("I10") <> "" And IsNumeric(Range("I10"))
        Range("I10") = InputBox("Champ Kms arrivé non renseigner")
            Loop

ActiveWindow.SelectedSheets.PrintOut Copies:=1

End Sub

Tu vas être pris dans la macro tant que les champs n'auront pas été remplis correctement.

Mytå

Juste une précision (inutile au niveau du code, certes) :

Champs... non renseigné

Désolé..............

chatnet a écrit :

Juste une précision (inutile au niveau du code, certes) :

Champs... non renseigné

Désolé..............

Merci pour l'information, c'est toujours bon a prendre.

Est pour le code, vous en pensez quoi ?

Bonjour à tous,

Une ancienne macro de Mytå que je salue au passage, adaptée à ton cas.

Fichier:

https://www.excel-pratique.com/~files/doc/Feuille_Pointage.xls

Amicalement

Claude.

Alors là chapeau

Moi mon code prenez des ta de ligne et la il prend pas de place

Par contre, j'ai d'autre question.

- Moi je veux détailler les deux bouton enregistrer et imprimer, car si le collègue veux imprimer de nouveau son fichier il na pas besoin de le re enregistrer car il la déjà.

- Puis comme demander avant, comment rendre le fichier sauvegarder in-modifiable, et désactivé les macro. Car étant un fichier imprimer en deux exemplaire et garder en sauvegarde, le fichier ne dois pas être modifiable car il dois resté identique a ceux imprimer. Donc je penser a verrouiller les case qui sont deverouiller par exemple ou autre je sais pas se qui est faisable.

Est ce possible ?

Merci

Petit UP

Bonjour à tous,

Avec les 3 boutons

Remarque : la macro nouvelle feuille n'efface pas tout, normal ?

Chemin d'enregistrement à vérifier.

à tester :

https://www.excel-pratique.com/~files/doc2/Feuille_Pointage2.xls

Amicalement

Claude.

Alors, j'ai testé, il y a quelque truc qui sont pas encore bon.

Par exemple, dans le fichier sauvegarder, il ni a pas les liste déroulante d'afficher, hors il faut qu'elle sont afficher pour savoir de quel centrale a été fait le chargement. Et la on vois rien, c'est vide.

Après, les bouton sont bien effacer et donc les macro désactivé, ca c'est bon.

Petite question, une fois le fichier protéger pour que certaine cellule ne soit pas modifier, quand on va cliquer sur enregistré un fichier et que celui ci sera sans macro, est ce que le fichier sera aussi protégé ?

Merci pour ton aide.

Bonsoir au forum,

Par exemple, dans le fichier sauvegarder, il ni a pas les liste déroulante d'afficher, hors il faut qu'elle sont afficher pour savoir de quel centrale a été fait le chargement. Et la on vois rien, c'est vide.

Normal ! les listes déroulantes sont faite pour être modifiées selon un choix, il aurait fallu

que tu associe une cellule à chaque liste (cellule liée) et que sous la liste (dans la cellule)

tu mette la formule INDEX >>> N° choix >>>> liste Centrales.

Conclusion:

Supprime ces 2 listes déroulantes et remplace-les par des "listes Validation"

Pour le reste, merci de poser des questions claires et réfléchies !

Claude.

3raw-file.xlsx (28.81 Ko)

Sa je ne sais pas faire, j'en ai jamais fait.

Il faut aller ou et faire comment ?

Merci

re,

Pour faire une liste avec validation de données,

1) Nommer la liste de la Feuil2, "Liste_centrales" par exemple

2) Sélectionner E12 (ici cellules fusionnées, pas génant)

3) Dans le ruban :

Données/Outils de données

en haut à droite >>>> Validation des données

Autoriser: choisir dans la liste "Liste"

Source: écrire >> =Liste_centrales , (ne pas oublier le signe égal)

Valider par OK

4) Copier E12 en J12 pour la 2ème liste.

il y a d'autres façons de faire, je te donne la + simple pour ne pas t'embrouiller avec

formule décaler.

Amicalement

Claude.

édit: ceci annule et remplace tes liste "Formulaire" actuelles.

Rechercher des sujets similaires à "question bouton"