Insertion saut de page si condition

Nounou -  
 Nounou -
Bonjour,

J'aimerais sous excel mettre un saut de page à chaque fois qu'une cellule de ma colonne A contient le mot "Chpt".
Je n'arrive as à trouver le code me permettant de faire cela.
Je galère, galère, galère...
Merci pour votre aide.
Configuration: Windows XP
Internet Explorer 7.0

2 réponses

  1. Ivan-hoe Messages postés 433 Date d'inscription   Statut Membre Dernière intervention   310
     
    Salut Nounou,
    le code ci-dessous devrait te permettre de faire ta manip', à condition qu'il n'y ait pas de trous dans les données de ta colonne A, puisque la boucle s'arrête quand elle rencontre une cellule vide.
    Si ce n'est pas le cas (données discontinues), il faudrait apporter qqs modifications.
    I.

    Sub InsertApresChpt()

    Range("A2").Select
    While ActiveCell.Value <> Empty
    If ActiveCell.Value = "Chpt" Then
    ActiveWindow.SelectedSheets.HPageBreaks.Add before:=ActiveCell.Offset(1, 0)
    End If
    ActiveCell.Offset(1, 0).Activate
    Wend

    End Sub
    0
    1. pcbb
       
      Merci beaucoup Ivan-hoé. T'es super super sympa.
      Tu m'enlèves une sacrée épine du pied...

      Le seul hic est que cela me fait un saut de page après la ligne contenant "chpt" alors que je le voudrais juste avant cette ligne (je ne l'avais pas précisé dans l'exposé de mon problème, mille pardons).

      Peux-tu m'aider pour corriger cet oubli ?

      Et si j'ose abuser (comme t'as l'air fort !)...
      1. Le même problème mais dans le cas de données discontinues (cela me servira pour un autre truc dans mon boulot)

      2. peux-tu me donner la formule à remplacer dans le cas où au lieu que ce soit égal à "Chpt" dans la cellule (donc "chpt" est l'unique donnée de la cellule) : que le mot "chpt" se trouve dans la cellule parmi une phrase (donc "chpt" se trouve dans la cellule parmi d'autres mots). C'est encore pour un autre truc dans mon boulot.

      Encore merci de ton aide très précieuse.
      0
  2. Ivan-hoe Messages postés 433 Date d'inscription   Statut Membre Dernière intervention   310
     
    Prenons les choses dans l'ordre :

    pour avoir le saut de page AVANT Chpt :
    ActiveWindow.SelectedSheets.HPageBreaks.Add before:=ActiveCell
    [supprimer .offset(1,0)]

    1. Le même problème mais dans le cas de données discontinues :
    Il faudrait alors définir la dernière ligne de données, sélectionner la plage à traiter et faire une boucle dedans (par exemple)

    Dim Cellule as range
    Dim DerniereLigne as long
    DerniereLigne= range("A65536").end(xlup).row
    range("A2:A" & derniereligne).select
    For each Cellule in selection
    [instructions]
    Next cellule

    2. peux-tu me donner la formule à remplacer dans le cas où le mot "chpt" se trouve dans la cellule parmi une phrase
    If ActiveCell.Value like "*Chpt*" Then etc.

    ça te convient ?
    0
    1. Nounou
       
      Merci à toi, OH GRAND IVAN-HOE !!!
      T'es génial !
      Merci... merci... merci...
      0