Risultati da 1 a 8 di 8

Discussione: Trova Testo e copia celle



  1. #1
    L'avatar di robynud
    Clicca e Apri
    Data Registrazione
    Dec 2015
    Località
    Gardone Val Trompia
    Età
    45
    Messaggi
    155
    Versione Office
    Office 2016
    Likes ricevuti
    24
    Likes dati
    65

    Trova Testo e copia celle

    ciao a tutti, sono di nuovo qui a chiedere il vostro aiuto, perche non sono molto pratico di vba, avevo questa macro che cerca il testo nelle celle della colonna A e mi copia la riga nel foglio 2, vorrei sapere se è possibile modificarla in modo da copiare le celle fino al testo </people> di ogni blocco di celle, e inserire delle righe vuote come nell'esempio del foglio1 in colonna B.
    File Allegati File Allegati

  2. #2

    L'avatar di ges
    Clicca e Apri
    Data Registrazione
    Jun 2015
    Località
    Como
    Età
    53
    Messaggi
    7183
    Versione Office
    2011MAC 2016WIN
    Likes ricevuti
    2067
    Likes dati
    1308

    Re: Trova Testo e copia celle

    Ciao,
    vedo nel tuo file allegato che le righe vuote variano di numero prima sono 8 poi sono 10, c'è un criterio per il numero di righe vuote?
    Quando si scartano tutte le ipotesi possibili, quella che resta, anche se può sembrare improbabile, non può che essere quella giusta!

  3. I seguenti utenti hanno dato un "Like"


  4. #3
    L'avatar di robynud
    Clicca e Apri
    Data Registrazione
    Dec 2015
    Località
    Gardone Val Trompia
    Età
    45
    Messaggi
    155
    Versione Office
    Office 2016
    Likes ricevuti
    24
    Likes dati
    65

    Re: Trova Testo e copia celle

    ciao ges, il criterio e che tra <people> e </people> indipendentemente dalle righe piene e vuote ci siano 18 righe

  5. #4

    L'avatar di cromagno
    Clicca e Apri
    Data Registrazione
    Aug 2015
    Località
    Sardegna
    Età
    37
    Messaggi
    4050
    Versione Office
    2013
    Likes ricevuti
    1240
    Likes dati
    931

    Re: Trova Testo e copia celle

    Ciao a tutti,

    @robynud

    prova con queste modifiche:

    Codice: 
    Sub Trova_Copia()
    Dim Wks1 As Worksheet, Wks2 As Worksheet, uRiga1 As Long, Inizio As String
    Dim i As Long, Interr As String, Riga As Long, j As Long, Fine As Long
    
    
    Set Wks1 = Worksheets("Foglio1")
    Set Wks2 = Worksheets("Foglio2")
    Wks2.Range("A:I").ClearContents
    uRiga1 = Wks1.Range("A" & Rows.Count).End(xlUp).Row
    Inizio = "<people>"
    Interr = "</people>"
    Riga = 1
    
    
    For i = 2 To uRiga1
        If Wks1.Range("A" & i).Value = Inizio Then
            Fine = Riga + 18
            For j = i To i + 19
                If Wks1.Range("A" & j).Value <> Interr Then
                    Wks2.Range("A" & Riga).Value = Wks1.Range("A" & j).Value
                    Riga = Riga + 1
                Else
                    Wks2.Range("A" & Riga - 1).ClearContents
                    Wks2.Range("A" & Fine).Value = "</person>"
                    Wks2.Range("A" & Fine + 1).Value = Interr
                    Riga = Fine + 2
                    Exit For
                End If
            Next j
            i = j
         End If
    Next i
    End Sub
    File Allegati File Allegati

    "Sono le persone che nessuno immagina che possano fare certe cose, quelle che fanno cose che nessuno può immaginare."

  6. I seguenti utenti hanno dato un "Like"


  7. #5
    L'avatar di robynud
    Clicca e Apri
    Data Registrazione
    Dec 2015
    Località
    Gardone Val Trompia
    Età
    45
    Messaggi
    155
    Versione Office
    Office 2016
    Likes ricevuti
    24
    Likes dati
    65

    Re: Trova Testo e copia celle

    grazie cromagno, funziona alla perfezione

  8. #6
    L'avatar di robynud
    Clicca e Apri
    Data Registrazione
    Dec 2015
    Località
    Gardone Val Trompia
    Età
    45
    Messaggi
    155
    Versione Office
    Office 2016
    Likes ricevuti
    24
    Likes dati
    65

    Re: Trova Testo e copia celle

    ti chiedo solo un ultima cosa, a volte capita di trovare come penultima cella prima di </people>, al posto di </person> c'e' <number>35</number> di cui il numero varia sempre e mi sballa tutto

  9. #7

    L'avatar di cromagno
    Clicca e Apri
    Data Registrazione
    Aug 2015
    Località
    Sardegna
    Età
    37
    Messaggi
    4050
    Versione Office
    2013
    Likes ricevuti
    1240
    Likes dati
    931

    Re: Trova Testo e copia celle

    Citazione Originariamente Scritto da robynud Visualizza Messaggio
    ti chiedo solo un ultima cosa, a volte capita di trovare come penultima cella prima di </people>, al posto di </person> c'e' <number>35</number> di cui il numero varia sempre e mi sballa tutto
    Ciao,
    prova modificando così (in rosso nel codice):

    Codice: 
    Sub Trova_Copia()
    Dim Wks1 As Worksheet, Wks2 As Worksheet, uRiga1 As Long, Inizio As String
    Dim i As Long, Interr As String, Riga As Long, j As Long, Fine As Long
    
    
    Set Wks1 = Worksheets("Foglio1")
    Set Wks2 = Worksheets("Foglio2")
    Wks2.Range("A:I").ClearContents
    uRiga1 = Wks1.Range("A" & Rows.Count).End(xlUp).Row
    Inizio = "<people>"
    Interr = "</people>"
    Riga = 1
    
    
    For i = 2 To uRiga1
        If Wks1.Range("A" & i).Value = Inizio Then
            Fine = Riga + 18
            For j = i To i + 19
                If Wks1.Range("A" & j).Value <> Interr Then
                    Wks2.Range("A" & Riga).Value = Wks1.Range("A" & j).Value
                    Riga = Riga + 1
                Else
                    Wks2.Range("A" & Riga - 1).ClearContents
                    Wks2.Range("A" & Fine).Value = Wks1.Range("A" & j - 1).Value
                    Wks2.Range("A" & Fine + 1).Value = Interr
                    Riga = Fine + 2
                    Exit For
                End If
            Next j
            i = j
         End If
    Next i
    End Sub
    File Allegati File Allegati

    "Sono le persone che nessuno immagina che possano fare certe cose, quelle che fanno cose che nessuno può immaginare."

  10. I seguenti utenti hanno dato un "Like"


  11. #8
    L'avatar di robynud
    Clicca e Apri
    Data Registrazione
    Dec 2015
    Località
    Gardone Val Trompia
    Età
    45
    Messaggi
    155
    Versione Office
    Office 2016
    Likes ricevuti
    24
    Likes dati
    65

    Re: Trova Testo e copia celle

    grazie cromagno la tua modifica che mi hai suggerito funziuona, unica cosa che mi rimaneva </person> in alto, sicuramente ho spiegato male io il problema



    ho cercato di modificare la tua macro e da quel poco che ho capito cosi

    Codice: 
    Sub Trova_Copia()
    Dim Wks1 As Worksheet, Wks2 As Worksheet, uRiga1 As Long, Inizio As String
    Dim i As Long, Interr As String, Riga As Long, j As Long, Fine As Long
    
    Set Wks1 = Worksheets("Foglio1")
    Set Wks2 = Worksheets("Foglio2")
    Wks2.Range("A:I").ClearContents
    uRiga1 = Wks1.Range("A" & Rows.Count).End(xlUp).Row
    Inizio = "<people>"
    Interr = "</people>"
    Riga = 1
    
    For i = 2 To uRiga1
        If Wks1.Range("A" & i).Value = Inizio Then
            Fine = Riga + 18
            For j = i To i + 19
                If Wks1.Range("A" & j).Value <> Interr Then
                    Wks2.Range("A" & Riga).Value = Wks1.Range("A" & j).Value
                    Riga = Riga + 1
                Else
                    Wks2.Range("A" & Riga - 1).ClearContents
                    Wks2.Range("A" & Fine).Value = Wks1.Range("A" & j - 1).Value
                    Wks2.Range("A" & Fine - 1).Value = Wks1.Range("A" & j - 2).Value
                    Wks2.Range("A" & Fine + 1).Value = Interr
                    Riga = Fine + 2
                    Exit For
                End If
            Next j
            i = j
         End If
    Next i
    End Sub
    mi rimane una copia della cella che contiene </person> nella parte alta, non ce un modo tipo faccio una ricerca parziale "number" e mi sposta quella cella in basso e cosi via,grazie in anticipo
    File Allegati File Allegati

Discussioni Simili

  1. Formula per fare andare a capo un testo in cella quando trova la maiuscola
    Di Mcmatt nel forum Domande su Excel in generale
    Risposte: 1
    Ultimo Messaggio: 14/03/17, 17:54
  2. [Risolto] inserire in A1 l'ultimo valore che trova nelle celle B1-M1
    Di Eddie18 nel forum Domande su Excel in generale
    Risposte: 16
    Ultimo Messaggio: 23/02/17, 16:52
  3. [Risolto] trova testo in colonna
    Di mapero nel forum Domande su Excel in generale
    Risposte: 5
    Ultimo Messaggio: 29/11/16, 08:40
  4. Copia celle dde e incolla dopo 2 sec.
    Di Treviso nel forum Domande su Excel VBA e MACRO
    Risposte: 2
    Ultimo Messaggio: 07/06/16, 09:39
  5. Copia valori da celle unite
    Di Lore02 nel forum Domande su Excel VBA e MACRO
    Risposte: 8
    Ultimo Messaggio: 01/03/16, 20:25

Permessi di Scrittura

  • Tu non puoi inviare nuove discussioni
  • Tu non puoi inviare risposte
  • Tu non puoi inviare allegati
  • Tu non puoi modificare i tuoi messaggi
  •