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 :

Saut de ligne sur une plage de cellules


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    Stagiaire
    Inscrit en
    Juin 2018
    Messages
    24
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 29
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Stagiaire
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2018
    Messages : 24
    Par défaut Saut de ligne sur une plage de cellules
    Bonjour à tous,

    J'ai un code qui me permet de créer une plage avec les propriétés voulus.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    Sub module_merge2(ByVal Target As Range, ByVal module As Variant)
    Target.Select
    Selection.Merge
    Selection.Value = module & vbCrLf & "2/2"
    With Selection
     
            .Interior.ColorIndex = 37
            .HorizontalAlignment = xlCenter
            .VerticalAlignment = xlCenter
            .WrapText = False
            .Orientation = 0
            .AddIndent = False
            .IndentLevel = 0
            .ShrinkToFit = False
            .ReadingOrder = xlContext
            .MergeCells = False
    End With
    Selection.Merge
    End Sub
    Mon souci est sur la ligne
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Selection.Value = module & vbCrLf & "2/2"
    Le saut de ligne ne fonctionne pas, j'ai aussi essayé avec chr(10) et chr(13) aucune ne fonctionne.

    Est ce que vous auriez une idée ?

  2. #2
    Invité
    Invité(e)
    Par défaut
    Citation Envoyé par Excel'air Voir le message
    Bonjour,

    A tester :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
     
    Sub Module_merge2(ByVal Target As Range, ByVal Contenu As Variant)
     
        With Target
                If .MergeCells = True Then .UnMerge
                .Clear
                .Interior.ColorIndex = 37
                .HorizontalAlignment = xlCenter
                .VerticalAlignment = xlCenter
                .Value = Contenu & Chr(10) & "2/2"
                Application.DisplayAlerts = False
                .MergeCells = True
                Application.DisplayAlerts = True
        End With
     
    End Sub

  3. #3
    Expert éminent Avatar de Menhir
    Homme Profil pro
    Ingénieur
    Inscrit en
    Juin 2007
    Messages
    16 037
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

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

    Informations forums :
    Inscription : Juin 2007
    Messages : 16 037
    Par défaut
    Citation Envoyé par Excel'air Voir le message
    Mon souci est sur la ligne Selection.Value = module & vbCrLf & "2/2" le saut de ligne ne fonctionne pas
    C'est normal puisque tu lui demandes de ne pas faire de renvoi à la ligne.
    Passe WrapText à True.

    Pour le reste, suit les conseil d'Eric : vire les Select/Selection et mets un With Target global.

    Dernier détail (juste histoire de pinailler) : perso, je mettrais le paramètre module de type String (Variant est à réserver uniquement aux cas d'absolue nécessité).

  4. #4
    Membre averti
    Homme Profil pro
    Stagiaire
    Inscrit en
    Juin 2018
    Messages
    24
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 29
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Stagiaire
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2018
    Messages : 24
    Par défaut
    Merci pour votre aide, ça fonctionne

    Dernier détail (juste histoire de pinailler) : perso, je mettrais le paramètre module de type String (Variant est à réserver uniquement aux cas d'absolue nécessité).
    Je vais suivre ton conseil

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

Discussions similaires

  1. [XL-2000] Supprimer ligne si cellule d'une colonne = 0, sur une plage de cellules
    Par audesara dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 04/05/2011, 16h16
  2. Insertion d'une ligne dans une plage de cellules fusionnées
    Par Gautheron dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 31/10/2008, 18h14
  3. Recuperer l'indice de ligne d'une plage de cellules fusionnées
    Par jafarMUC dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 03/04/2008, 14h07
  4. [DAO] SQL sur une plage de cellules
    Par cafeine dans le forum Contribuez
    Réponses: 8
    Dernier message: 01/03/2008, 22h47
  5. Comment creer un recordset ADO sur une plage de cellules
    Par JYL74 dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 20/12/2007, 09h36

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