Vb récupérer le numero de ligne
Fermé
oisillon
Messages postés
3
Date d'inscription
jeudi 11 septembre 2008
Statut
Membre
Dernière intervention
12 septembre 2008
-
12 sept. 2008 à 18:13
Prog44 Messages postés 17 Date d'inscription jeudi 31 juillet 2008 Statut Membre Dernière intervention 24 septembre 2008 - 16 sept. 2008 à 22:43
Prog44 Messages postés 17 Date d'inscription jeudi 31 juillet 2008 Statut Membre Dernière intervention 24 septembre 2008 - 16 sept. 2008 à 22:43
A voir également:
- Vb récupérer le numero de ligne
- Numero prive - Guide
- Recuperer video youtube - Guide
- Compte piraté facebook comment le recuperer - Guide
- Recuperer message whatsapp - Guide
- Site de vente en ligne particulier - Guide
1 réponse
Prog44
Messages postés
17
Date d'inscription
jeudi 31 juillet 2008
Statut
Membre
Dernière intervention
24 septembre 2008
3
16 sept. 2008 à 22:43
16 sept. 2008 à 22:43
voici un exemple :
Sub copier_ligne()
Dim i, j, nbcar, maxpar, nbcarmot, nbpar, pos1, pos2, p1, p2 As Integer
Dim oncopie As Boolean
Dim mot As String
Dim vpar As Paragraph
Dim vrange As Range
mot = "pigeon" 'mot à rechercher --> modifier le mot ici uniquement
nbcarmot = Len(mot) 'longueur du mot
'parcours du document
With ActiveDocument
nbpar = .Paragraphs.Count 'nombre deparagraphes dans le texte de départ --> ne doit pas changer
For i = 1 To nbpar 'parcours des paragraphes
Set vpar = .Paragraphs(i) 'vpar est le paragraphe en cours
nbcar = .Paragraphs(i).Range.Characters.Count 'nombre total de caractères dans le paragraphes
oncopie = True 'flag pour éviter les doublons de mot à rechercher dans le même paragraphe
For j = 0 To nbcar - 1 'parcours des caractères du paragraphe vpar
pos1 = j 'position dans le paragraphe
p1 = vpar.Range.Start + pos1 'position dans le document (nécessaire pour vrange)
If pos1 + nbcarmot < nbcar Then 'test longueur du mot recherché
pos2 = pos1 + nbcarmot
p2 = p1 + nbcarmot
Else
pos2 = pos1
p2 = p1
End If
Set vrange = .Range(p1, p2)
If vrange = mot Then
If oncopie = True Then
.Paragraphs.Add
maxpar = .Paragraphs.Count 'déplacement de la fin du texte
.Paragraphs(maxpar).Range.InsertAfter vpar.Range.Text
oncopie = False
End If
End If
Next j
Next i
End With
End Sub
Sub copier_ligne()
Dim i, j, nbcar, maxpar, nbcarmot, nbpar, pos1, pos2, p1, p2 As Integer
Dim oncopie As Boolean
Dim mot As String
Dim vpar As Paragraph
Dim vrange As Range
mot = "pigeon" 'mot à rechercher --> modifier le mot ici uniquement
nbcarmot = Len(mot) 'longueur du mot
'parcours du document
With ActiveDocument
nbpar = .Paragraphs.Count 'nombre deparagraphes dans le texte de départ --> ne doit pas changer
For i = 1 To nbpar 'parcours des paragraphes
Set vpar = .Paragraphs(i) 'vpar est le paragraphe en cours
nbcar = .Paragraphs(i).Range.Characters.Count 'nombre total de caractères dans le paragraphes
oncopie = True 'flag pour éviter les doublons de mot à rechercher dans le même paragraphe
For j = 0 To nbcar - 1 'parcours des caractères du paragraphe vpar
pos1 = j 'position dans le paragraphe
p1 = vpar.Range.Start + pos1 'position dans le document (nécessaire pour vrange)
If pos1 + nbcarmot < nbcar Then 'test longueur du mot recherché
pos2 = pos1 + nbcarmot
p2 = p1 + nbcarmot
Else
pos2 = pos1
p2 = p1
End If
Set vrange = .Range(p1, p2)
If vrange = mot Then
If oncopie = True Then
.Paragraphs.Add
maxpar = .Paragraphs.Count 'déplacement de la fin du texte
.Paragraphs(maxpar).Range.InsertAfter vpar.Range.Text
oncopie = False
End If
End If
Next j
Next i
End With
End Sub