IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Macros et VBA Excel Discussion :

Macro insertion un saut de ligne


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Mai 2009
    Messages
    17
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2009
    Messages : 17
    Par défaut Macro insertion un saut de ligne
    Bonjour,


    est-il possible de concevoir une macro qui insère un saut de ligne au dessus d'une cellule dont le contenu est "Total" par exemple ?

  2. #2
    Membre Expert
    Femme Profil pro
    Ingénieur
    Inscrit en
    Octobre 2016
    Messages
    1 703
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 30
    Localisation : France, Indre et Loire (Centre)

    Informations professionnelles :
    Activité : Ingénieur
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2016
    Messages : 1 703
    Par défaut
    Bonjour,
    Que signifie un "saut de ligne"?
    Est-ce que tu veux insérer un saut de page? Ou est-ce que tu veux insérer une nouvelle ligne au-dessus de la cellule contenant "Total"?
    Dans les 2 cas, pour obtenir le code correspondant, utilise l'enregistreur de macro.
    Pour repérer la cellule contenant le mot "Total",tu peux utiliser la méthode Find.

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Mai 2009
    Messages
    17
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2009
    Messages : 17
    Par défaut
    Déja merci pour la réponse : oui c'est un saut de page, donc j'utilise l'enregistreur de macro et j'ajoute la fonction find... mais elle fonctionne comment ?

    j'ai testé un truc comme cela mais ca bug :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Find("Total HT").Select
        ActiveWindow.SelectedSheets.HPageBreaks.Add Before:=ActiveCell

  4. #4
    Membre Expert
    Femme Profil pro
    Ingénieur
    Inscrit en
    Octobre 2016
    Messages
    1 703
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 30
    Localisation : France, Indre et Loire (Centre)

    Informations professionnelles :
    Activité : Ingénieur
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2016
    Messages : 1 703
    Par défaut
    Citation Envoyé par asceltis Voir le message
    mais elle fonctionne comment ?
    As-tu regardé le lien que je te donne pour comprendre la fonction Find? Qu'est-ce que tu ne comprends pas? As-tu essayé de l'utiliser? As-tu un message d'erreur quand tu l'utilises? Si oui, lequel?
    Ou est-ce que tu ne sais pas comment l'utiliser en coimbinaison avec la fonction permettant de faire le saut de page?
    Montre-nous le code que tu as déjà réussi à avoir, on va essayer de travailler à partir de cela.

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Mai 2009
    Messages
    17
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2009
    Messages : 17
    Par défaut
    oui j'ai regardé le lien que tu m'avais donné :

    dans un premier temps j'ai fait cela :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    Sub Saut()
    '
    ' Saut Macro
    '
     
    '
        Sheets("Facture").Select
        Find("Total HT", MatchCase = True).Select
        ActiveWindow.SelectedSheets.HPageBreaks.Add Before:=ActiveCell
    End Sub

    PS : désolé je ne connais pas VBD :s

    Erreur : "Erreur de compilation : Sub ou Founction non definie"

  6. #6
    Membre Expert
    Femme Profil pro
    Ingénieur
    Inscrit en
    Octobre 2016
    Messages
    1 703
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 30
    Localisation : France, Indre et Loire (Centre)

    Informations professionnelles :
    Activité : Ingénieur
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2016
    Messages : 1 703
    Par défaut
    Attention, comme dans la "vraie vie" quand on cherche quelque chose, on le cherche à un endroit donné (on cherche un mot sur une certaine page d'un livre, par exemple). C'est aussi ce que spécifie l'explication de la syntaxe de Find :
    expression.Find(What, After, LookIn, LookAt, SearchOrder, SearchDirection, MatchCase, MatchByte, SearchFormat)
    expression : Variable qui représente un objet Range.
    On n'écrit pas Find comme cela, il faut l'appliquer à une plage de cellules. Par exemple, si tu sais que ce que tu cherches se trouve dans la plage de cellule A1:Z100, tu peux écrire:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Range("A1:Z100").Find("Total HT", MatchCase = True)
    Ton erreur doit venir de là.
    Ensuite, en commentaire de ton code : en VBA on évite un maximum d'utiliser des Select (et Activate). Cela entraîne bien souvent des problèmes difficilement gérables. Au lieu d'utiliser Select, puis de faire appel à la cellule active, applique tes fonctions directement aux cellules que tu veux :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ActiveWindow.SelectedSheets.HPageBreaks.Add Before:=Sheets("Facture").Range("A1:Z100").Find("Total HT", MatchCase = True)

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 4
    Dernier message: 04/08/2016, 12h14
  2. [XL-2007] Création de macro qui compte et affiche le nomre de cellules avec "x"
    Par maximus45000 dans le forum Excel
    Réponses: 4
    Dernier message: 20/05/2015, 11h03
  3. Réponses: 2
    Dernier message: 15/04/2015, 09h12
  4. [XL-2000] Macro qui compte les valeurs distinctes
    Par wyzer dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 29/07/2010, 10h40
  5. macro Excel qui compte les lignes
    Par FreddyNB dans le forum VB.NET
    Réponses: 2
    Dernier message: 08/07/2008, 17h11

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo