Copier coller des blocs avec notepade+

dominique -  
cs_Le Pivert Messages postés 7904 Date d'inscription   Statut Contributeur Dernière intervention   -
Bonjour
Je voudrais copier un bloc comprenant janvier de la balise <Placemark> à </Placemark>

<Placemark>
<name>calendrier</name>
<snippet> </snippet>
<Snippet maxLines="0"></Snippet>
<description>janvier</description>
<styleUrl>#Default_point_style</styleUrl>
<Point>
<coordinates></coordinates>
</Point>
</Placemark>
<Placemark>
<name>calendrier</name>
<snippet> </snippet>
<Snippet maxLines="0"></Snippet>
<description> février</description>
<styleUrl>#Default_point_style</styleUrl>
<Point>
<coordinates> </coordinates>
</Point>
</Placemark>
<Placemark>
<name>calendrier</name>
<snippet></snippet>
<Snippet maxLines="0"></Snippet>
<description>mars </description>
<styleUrl>#Default_point_style</styleUrl>
<Point>
<coordinates> </coordinates>
</Point>
</Placemark>
<Placemark>
<name>calendrier</name>
<snippet></snippet>
<Snippet maxLines="0"></Snippet>
<description>avril</description>
<styleUrl>#Default_point_style</styleUrl>
<Point>
<coordinates> </coordinates>
</Point>
</Placemark>
A voir également:

2 réponses

cs_Le Pivert Messages postés 7904 Date d'inscription   Statut Contributeur Dernière intervention   729
 
Bonjour,

En vba, importer le texte dans une colonne d'un classeur. Ensuite chercher le nom et copier la plage de cellule et la coller dans ce même classeur:

Option Explicit
'importer fichier texte
Private Sub CommandButton1_Click()
ImportText "C:\Users\....\Documents\monfichier.txt", Range("B1") 'adapter le chemin du fichier txt et la colonne
End Sub
'rechercher le mot et copier coller la plage
Private Sub CommandButton2_Click()
aller_mot ("<description>janvier</description> ")
End Sub
Public Sub aller_mot(mot_a_trouver As String)
Dim ma_feuille, col_no, lg_no, flag_trouve
    Application.ScreenUpdating = False   ' pour aller plus vite
    Set ma_feuille = ThisWorkbook.Sheets("Feuil1")
    col_no = 2 ' pour la colonne B (B = 2)
    lg_no = 1  ' à partir de la première ligne
    flag_trouve = False
    Do While Not IsEmpty(ma_feuille.Cells(lg_no, col_no))
        If (ma_feuille.Cells(lg_no, col_no).Value = mot_a_trouver) Then
           ma_feuille.Cells(lg_no, col_no).Select
       Range("B" & lg_no - 4 & ":B" & lg_no + 5).Copy
        Range("I1").Select 'adapter
    ActiveSheet.Paste ' coller
    flag_trouve = True
           Exit Do
        End If
        lg_no = lg_no + 1
    Loop
    If (flag_trouve = False) Then
       MsgBox ("Mot " & mot_a_trouver & " non trouvé !")
    End If
    Application.ScreenUpdating = True   ' Remet le comportement initial
End Sub
Sub ImportText(FileName As String, PosImport As Range)
    Dim QT As QueryTable
    Set QT = ActiveSheet.QueryTables.Add(Connection:="TEXT;" & FileName, Destination:=PosImport)
    With QT
        .TextFileSemicolonDelimiter = True
        .TextFileTextQualifier = xlTextQualifierDoubleQuote
        .Refresh
    End With
End Sub



0
dominique2410
 
pour moi cela ne fonctionne pas avec un message erreur de compilation, merci quand méme
0
cs_Le Pivert Messages postés 7904 Date d'inscription   Statut Contributeur Dernière intervention   729
 
Voilà un exemple:

http://www.cjoint.com/c/FBcq3qGK6IQ
0