Copiare da un sito e incollare su un foglio Excel in modo corretto

Anonimo
2022-08-07T08:32:11+00:00

Esiste una funzione in excel oppure un modo alternativo al mio problema ?

come da foto allegata vi mostro che copiando da un sito questi dati , incollandoli sul mio foglio me li da incolonnati , esiste una funzione oppure un modo alternativo di averli sul mio foglio come sono stati copiati ?

Microsoft 365 e Office | Excel | Per la casa | Altro

Domanda bloccata. Questa domanda è stata eseguita dalla community del supporto tecnico Microsoft. È possibile votare se è utile, ma non è possibile aggiungere commenti o risposte o seguire la domanda.

0 commenti Nessun commento
Risposta accettata dall'autore della domanda
Anonimo
2022-08-11T17:55:47+00:00

Ciao Lupetto,

In effetti le partite Posticipate o Cancellate non devono essere presenti nella lista

Rigurdo alle partite completate o in corso NO devono restare , insieme a quelle che devono ancora iniziare che portano con se il loro orario di inizio .

Altra cosa importante che ho dimenticato di dirti e' la seguente : gli orari di inizio partite hanno tutte un'ora indietro rispetto al mio orario e non possono essere cambiati dal sito in questione , potresti magicamente aggiungere in automatico un'ora in piu' rispetto a loro ?

Questi giorni andavo molto di fretta e ho fatto un po di confusione , poco fa ho riflettuto bene sul tutto ed ecco la maschera finale di come dovrebbe essere fatta

Immaginesi notano due colonne in piu che vanno lasciate libere per altre cose che servono a me e sarebbero le colonne D - L

altro punto importante e' la colonna H , siccome dipende se si scaricano dati regressi oppure futuri , se sono regressi danno il risultato , se sono futuri danno orario e dobbiamo separarli come da colonne B e QR .

Riguardo ad altre variazioni rimane come detto in precedenza.

Ho modificato il codice al fine di abbracciare le modifiche da te indicate e la revisione della disposizione dei dati da te richiesta

Pertanto, sostituisci il mio codice precedente con la seguente versione:

'========>>

Option Explicit

'-------->>

Public Sub Tester()

Dim SH As Worksheet 

Dim Rng As Range 

Dim dTime As Double 

Dim sStr As String 

Dim sScore As String 

Dim sHome\_Team As String, sAway\_Team, m As String 

Dim sLega As String 

Dim vOdds\_Home As Variant, vOdds\_Draw As Variant, vOdds\_Away As Variant 

Dim vHome\_Rank As Variant, vAway\_Rank As Variant 

Dim arrSplit As Variant, arrRisultato() As Long 

Dim i As Long, j As Long, k As Long, iRiga As Long 

Dim iPos As Long, jPos As Long, kPos As Long, pPos As Long, qPos As Long, rPos As Long, sPos As Long 

Dim tempPos As Long 

Dim LRow As Long 

Dim bHome As Boolean, bRank As Boolean, bScore As Boolean, bTime As Boolean 

Const iRigs\_Intestazioni As Long = 3              '<<=== Modifica 

Set SH = ActiveSheet 

With SH 

    LRow = .Range("A" & .Rows.Count).End(xlUp).Row 

    Set Rng = SH.Range("A2:A" & LRow) 

End With 

iRiga = iRigs\_Intestazioni + 1 

ReDim arrRisultato(1 To 2) 

For k = 1 To Rng.Cells.Count 

    j = j + 1 

    If InStr(1, Rng.Cells(k + 1), "post", vbTextCompare) Then 

        k = k + 3 

        bHome = True 

        GoTo JumpMatch 

    End If 

    sStr = Rng.Cells(k).Text 

    With SH 

        Select Case True 

            Case Left(sStr, 3) = Space(3) '\\ Nuova Lega 

                sLega = Trim(sStr) 

                bHome = True 

            Case Left(sStr, 1) = "W", Left(sStr, 1) = "L", Left(sStr, 1) = "D"  '\\ Form 

                If bHome Then 

                    .Cells(iRiga, "E") = Trim(sStr) 

                    .Cells(iRiga, "C") = sLega 

                    bHome = False 

                Else 

                    .Cells(iRiga, "K") = Trim(sStr) 

                    bHome = True 

                End If 

            Case InStr(2, sStr, ".", vbTextCompare)         '\\ Odds 

                pPos = InStr(2, sStr, ".", vbTextCompare) 

                vOdds\_Home = Trim(Left(sStr, pPos + 2)) 

                qPos = InStr(pPos + 2, sStr, ".", vbTextCompare) 

                vOdds\_Draw = Trim(Mid(sStr, qPos - 1, 4)) 

                rPos = InStr(qPos + 1, sStr, ".", vbTextCompare) 

                vOdds\_Away = Mid(sStr, rPos - 1, 99) 

                vOdds\_Away = Left(vOdds\_Away, Len(vOdds\_Away) - 2) 

                .Cells(iRiga, "M").Resize(1, 3).Value = Array(vOdds\_Home, vOdds\_Draw, vOdds\_Away) 

                iRiga = iRiga + 1 

                If j < Rng.Cells.Count Then 

                End If 

                bHome = True 

            Case InStr(1, sStr, "post", vbTextCompare) 

                If iRiga = 25 Then Stop 

            Case Left(sStr, 4) = " ---" '\\ No Odds 

                .Cells(iRiga, "L").Resize(1, 3).Value = "-" 

                iRiga = iRiga + 1 

                bHome = True 

                .Cells(iRiga, "C") = sLega 

            Case Left(sStr, 1) = Space(1), Left(sStr, 2) = Space(2)  '\\ iPos Score\Risultato iPos 

                sStr = Trim(sStr) 

                If Left(sStr, 2) Like "##" Then 

                    vHome\_Rank = Left(sStr, 2) 

                    bRank = True 

                    iPos = 4 

                ElseIf IsNumeric(Left(sStr, 1)) Then 

                    vHome\_Rank = Left(sStr, 1) 

                    iPos = 3 

                    bRank = True 

                Else 

                    iPos = 1 

                End If 

                .Cells(iRiga, "F") = vHome\_Rank 

                vHome\_Rank = "" 

                If InStr(1, sStr, ":") Then 

                    jPos = InStr(1, sStr, ":") - 3 

                    sPos = 2 

                Else 

                    tempPos = InStr(1, sStr, "-") 

                    If IsNumeric(Mid(sStr, tempPos + 1, 1)) Then 

                        jPos = InStr(sStr, "-") - 2 

                        bScore = True 

                    Else 

                        jPos = InStr(tempPos + 1, sStr, "-") 

                        bScore = IsNumeric(Mid(sStr, jPos + 1, 1)) 

                        jPos = jPos - 2 

                    End If 

                End If 

                If InStr(1, Mid(sStr, jPos + 1, 3 + sPos), "-", vbTextCompare) Then 

                    sScore = Mid(sStr, jPos + 1, 3 + sPos) 

                    bScore = True 

                    arrSplit = Split(sScore, "-") 

                    For i = 0 To 1 

                        arrRisultato(i + 1) = CLng(arrSplit(i)) 

                    Next i 

                ElseIf InStr(1, Mid(sStr, jPos + 1, 3 + sPos), ":", vbTextCompare) Then 

                    bTime = True 

                    dTime = TimeValue(Mid(sStr, jPos + 1, 3 + sPos)) + 1 / 24 

                End If 

                If CBool(jPos) Then 

                    sHome\_Team = Trim(Mid(sStr, Application.Max(iPos, 1), jPos - iPos)) 

                    kPos = iPos + Len(sHome\_Team) + 5 

                Else 

                    jPos = InStr(sStr, ":") 

                    If CBool(jPos) Then 

                        sHome\_Team = Mid(sStr, iPos, jPos - 2 - iPos) 

                    End If 

                    kPos = iPos + Len(sHome\_Team) + 7 

                End If 

                .Cells(iRiga, "G") = sHome\_Team 

                If IsNumeric(Right(sStr, 2)) Then 

                    vAway\_Rank = Right(sStr, 2) 

                    bRank = True 

                ElseIf IsNumeric(Right(sStr, 1)) Then 

                    vAway\_Rank = Right(sStr, 1) 

                    bRank = True 

                End If 

                sAway\_Team = Mid(sStr, kPos + sPos, 99) 

                If bRank Then 

                    sAway\_Team = Left(sAway\_Team, InStrRev(sAway\_Team, " ") - 1) 

                    bRank = False 

                End If 

                .Cells(iRiga, "I") = sAway\_Team 

                .Cells(iRiga, "J") = vAway\_Rank 

                If bTime Then 

                    .Cells(iRiga, "H") = dTime 

                End If 

                If bScore Then 

                    .Cells(iRiga, "Q").Resize(1, 2).Value = arrRisultato 

                End If 

                vAway\_Rank = "" 

                iPos = 0 

                jPos = 0 

                sPos = 0 

                bScore = False 

                bTime = False 

        End Select 

    End With 

JumpMatch:

Next k 

End Sub

'<<========

Ho controllato questo codice, utilizzando i dati di martedì 9 agosto e ho ottento i seguenti risultati:

Ho quindi scaricato i dati di oggi, che comprendono 30 partite, di cui 8 posticipate. Eseguendo il codice rivisto, ottengo la seguente tabella:

Potresti scaricare il mio file di prova Lupetto202207811.xlsm

===

Regards,

Norman

Immagine

La risposta è stata utile?

1 persona ha trovato utile questa risposta.
0 commenti Nessun commento

56 risposte aggiuntive

Ordina per: Meno recente
  1. Anonimo
    2022-08-10T18:27:58+00:00

    Ciao Norman

    ho trovato un po di tempo e vengo a risponderti , come da te suggerito giorni addietro mi sono studiato lo strumento trasforma e recupera di Excel e sono riuscito finalmente ad ottenere cio' che volevo , il problema restava comunque perche' prima di passare alla query cio' che incollo sul mio foglio excel dal sito , ci dovevo lavorare una mezzoretta per inserire ed aliminare alcune cose che tu immaggini pero' alla fine arrivavo e questo mi faceva recuperar tantissimo tempo che prima perdevo ,

    cio che hai fatto tu invece e' tutta un'altra cosa , direi e' il TOP , ora ti allego un preent screen e ti spiego alcune variazioni che ci sarebbero da fare .

    ![](https://learn-attachment.microsoft.com/api/attachments/53ee4e68-4544-4cb8-9cf2-d41f4f14d567?platform=QnA

    Questo e' cio' che ho ottenuto con lo strumento trasforma e recupera di Excel ed e' quasi cosi che a me servirebbe , in giallo ho evidenziato le varianti rispetto dal tuo . Come tu ben dicevi ci sono casi speciali ed io li conosco tutti visto e considerato che li facevo tutti a mano uno per uno e per cominciare ne ho fatto notare uno ,1) ( Post ) bene queste sono partite Posticipate , non giocano quindi non devono apparire nella lista , 2) quando vi sono piu incontri della stessa nazione incolonnati uno sotto l'altro il sito mette solo la nazione alla prima partita e lascia vuoto le restanti sotto , quei spazi vuoti andrebbero riempiti con la stessa nazione , 3) mi scuso se non ho fatto il preent screen con le coordinate ( figuraccia , purtroppo sono un principiante ), 4) le colonne ( in teoria ) C e I andrebbero posizionate in questo modo, 5) tutte le quote in LMN con virgola e 2 decimali ,6) orario dovrebbe passare dalla colonna F alla colonna A , 7) nella colonna F ne andrebbe inserita un'altra diventado 2 colonne la F e la G e li dovrebbero andare le due colonne D e H cioe' le Positions , 8) come puoi notare nella colonna C e I le lettere che compongono ogni cella sono 5 ma non a tutti , nel caso ce siano di meno va aggiunto come da esempio ( DL--- ) ne mancvano tre ed abbiamo inserito 3 trattini e cosi via per le altre .

    Direi che per il momento e' tutto e non so come ringraziarti per la tua pazienza e generosita' .

    Best Regards.

    La risposta è stata utile?

    0 commenti Nessun commento
  2. Anonimo
    2022-08-10T22:29:14+00:00

    Ciao Lupetto,

    ho trovato un po di tempo e vengo a risponderti , come da te suggerito giorni addietro mi sono studiato lo strumento trasforma e recupera di Excel e sono riuscito finalmente ad ottenere cio' che volevo , il problema restava comunque perche' prima di passare alla query cio' che incollo sul mio foglio excel dal sito , ci dovevo lavorare una mezzoretta per inserire ed aliminare alcune cose che tu immaggini pero' alla fine arrivavo e questo mi faceva recuperar tantissimo tempo che prima perdevo ,

    cio che hai fatto tu invece e' tutta un'altra cosa , direi e' il TOP , ora ti allego un preent screen e ti spiego alcune variazioni che ci sarebbero da fare .

    ![Immagine](https://learn-attachment.microsoft.com/api/attachments/53ee4e68-4544-4cb8-9cf2-d41f4f14d567?platform=QnA

    Questo e' cio' che ho ottenuto con lo strumento trasforma e recupera di Excel ed e' quasi cosi che a me servirebbe , in giallo ho evidenziato le varianti rispetto dal tuo . Come tu ben dicevi ci sono casi speciali ed io li conosco tutti visto e considerato che li facevo tutti a mano uno per uno e per cominciare ne ho fatto notare uno ,1) ( Post ) bene queste sono partite Posticipate , non giocano quindi non devono apparire nella lista , 2) quando vi sono piu incontri della stessa nazione incolonnati uno sotto l'altro il sito mette solo la nazione alla prima partita e lascia vuoto le restanti sotto , quei spazi vuoti andrebbero riempiti con la stessa nazione , 3) mi scuso se non ho fatto il preent screen con le coordinate ( figuraccia , purtroppo sono un principiante ), 4) le colonne ( in teoria ) C e I andrebbero posizionate in questo modo, 5) tutte le quote in LMN con virgola e 2 decimali ,6) orario dovrebbe passare dalla colonna F alla colonna A , 7) nella colonna F ne andrebbe inserita un'altra diventado 2 colonne la F e la G e li dovrebbero andare le due colonne D e H cioe' le Positions , 8) come puoi notare nella colonna C e I le lettere che compongono ogni cella sono 5 ma non a tutti , nel caso ce siano di meno va aggiunto come da esempio ( DL--- ) ne mancvano tre ed abbiamo inserito 3 trattini e cosi via per le altre .

    Direi che per il momento e' tutto e non so come ringraziarti per la tua pazienza e generosita' .

    Best Regards.

    Non sono sicuro di aver compreso appieno tutti i tuoi punti, ma li esaminerò domani.

    Tuttavia, il risultato finale può essere presentato con qualsiasi disposizione di dati che desideri. Ho appreso che vuoi escludere eventuali partite posticipate, ma allo stesso modo vuoi escludere eventuali partite completate o in corso?

    ===

    Regards,

    Norman

    Immagine

    La risposta è stata utile?

    0 commenti Nessun commento
  3. Anonimo
    2022-08-11T05:28:56+00:00

    Ciao Luca,

    ho trovato un po di tempo e vengo a risponderti , come da te suggerito giorni addietro mi sono studiato lo strumento trasforma e recupera di Excel e sono riuscito finalmente ad ottenere cio' che volevo , il problema restava comunque perche' prima di passare alla query cio' che incollo sul mio foglio excel dal sito , ci dovevo lavorare una mezzoretta per inserire ed aliminare alcune cose che tu immaggini pero' alla fine arrivavo e questo mi faceva recuperar tantissimo tempo che prima perdevo ,

    cio che hai fatto tu invece e' tutta un'altra cosa , direi e' il TOP , ora ti allego un preent screen e ti spiego alcune variazioni che ci sarebbero da fare .

    ![Immagine](https://learn-attachment.microsoft.com/api/attachments/53ee4e68-4544-4cb8-9cf2-d41f4f14d567?platform=QnA

    Questo e' cio' che ho ottenuto con lo strumento trasforma e recupera di Excel ed e' quasi cosi che a me servirebbe , in giallo ho evidenziato le varianti rispetto dal tuo . Come tu ben dicevi ci sono casi speciali ed io li conosco tutti visto e considerato che li facevo tutti a mano uno per uno e per cominciare ne ho fatto notare uno ,1) ( Post ) bene queste sono partite Posticipate , non giocano quindi non devono apparire nella lista , 2) quando vi sono piu incontri della stessa nazione incolonnati uno sotto l'altro il sito mette solo la nazione alla prima partita e lascia vuoto le restanti sotto , quei spazi vuoti andrebbero riempiti con la stessa nazione , 3) mi scuso se non ho fatto il preent screen con le coordinate ( figuraccia , purtroppo sono un principiante ), 4) le colonne ( in teoria ) C e I andrebbero posizionate in questo modo, 5) tutte le quote in LMN con virgola e 2 decimali ,6) orario dovrebbe passare dalla colonna F alla colonna A , 7) nella colonna F ne andrebbe inserita un'altra diventado 2 colonne la F e la G e li dovrebbero andare le due colonne D e H cioe' le Positions , 8) come puoi notare nella colonna C e I le lettere che compongono ogni cella sono 5 ma non a tutti , nel caso ce siano di meno va aggiunto come da esempio ( DL--- ) ne mancvano tre ed abbiamo inserito 3 trattini e cosi via per le altre .

    Direi che per il momento e' tutto e non so come ringraziarti per la tua pazienza e generosita' .

    Best Regards.

    Non sono sicuro di aver compreso appieno tutti i tuoi punti, ma li esaminerò domani.

    Tuttavia, il risultato finale può essere presentato con qualsiasi disposizione di dati che desideri. Ho appreso che vuoi escludere eventuali partite posticipate, ma allo stesso modo vuoi escludere eventuali partite completate o in corso?

    ===

    Regards,

    Norman

    Immagine

    Buongiorno Norman

    In effetti le partite Posticipate o Cancellate non devono essere presenti nella lista

    Rigurdo alle partite completate o in corso NO devono restare , insieme a quelle che devono ancora iniziare che portano con se il loro orario di inizio .

    Altra cosa importante che ho dimenticato di dirti e' la seguente : gli orari di inizio partite hanno tutte un'ora indietro rispetto al mio orario e non possono essere cambiati dal sito in questione , potresti magicamente aggiungere in automatico un'ora in piu' rispetto a loro ?

    La risposta è stata utile?

    0 commenti Nessun commento
  4. Anonimo
    2022-08-11T06:49:49+00:00

    Ciao Luca,

    ho trovato un po di tempo e vengo a risponderti , come da te suggerito giorni addietro mi sono studiato lo strumento trasforma e recupera di Excel e sono riuscito finalmente ad ottenere cio' che volevo , il problema restava comunque perche' prima di passare alla query cio' che incollo sul mio foglio excel dal sito , ci dovevo lavorare una mezzoretta per inserire ed aliminare alcune cose che tu immaggini pero' alla fine arrivavo e questo mi faceva recuperar tantissimo tempo che prima perdevo ,

    cio che hai fatto tu invece e' tutta un'altra cosa , direi e' il TOP , ora ti allego un preent screen e ti spiego alcune variazioni che ci sarebbero da fare .

    ![Immagine](https://learn-attachment.microsoft.com/api/attachments/53ee4e68-4544-4cb8-9cf2-d41f4f14d567?platform=QnA

    Questo e' cio' che ho ottenuto con lo strumento trasforma e recupera di Excel ed e' quasi cosi che a me servirebbe , in giallo ho evidenziato le varianti rispetto dal tuo . Come tu ben dicevi ci sono casi speciali ed io li conosco tutti visto e considerato che li facevo tutti a mano uno per uno e per cominciare ne ho fatto notare uno ,1) ( Post ) bene queste sono partite Posticipate , non giocano quindi non devono apparire nella lista , 2) quando vi sono piu incontri della stessa nazione incolonnati uno sotto l'altro il sito mette solo la nazione alla prima partita e lascia vuoto le restanti sotto , quei spazi vuoti andrebbero riempiti con la stessa nazione , 3) mi scuso se non ho fatto il preent screen con le coordinate ( figuraccia , purtroppo sono un principiante ), 4) le colonne ( in teoria ) C e I andrebbero posizionate in questo modo, 5) tutte le quote in LMN con virgola e 2 decimali ,6) orario dovrebbe passare dalla colonna F alla colonna A , 7) nella colonna F ne andrebbe inserita un'altra diventado 2 colonne la F e la G e li dovrebbero andare le due colonne D e H cioe' le Positions , 8) come puoi notare nella colonna C e I le lettere che compongono ogni cella sono 5 ma non a tutti , nel caso ce siano di meno va aggiunto come da esempio ( DL--- ) ne mancvano tre ed abbiamo inserito 3 trattini e cosi via per le altre .

    Direi che per il momento e' tutto e non so come ringraziarti per la tua pazienza e generosita' .

    Best Regards.

    Non sono sicuro di aver compreso appieno tutti i tuoi punti, ma li esaminerò domani.

    Tuttavia, il risultato finale può essere presentato con qualsiasi disposizione di dati che desideri. Ho appreso che vuoi escludere eventuali partite posticipate, ma allo stesso modo vuoi escludere eventuali partite completate o in corso?

    ===

    Regards,

    Norman

    Immagine

    Buongiorno Norman

    In effetti le partite Posticipate o Cancellate non devono essere presenti nella lista

    Rigurdo alle partite completate o in corso NO devono restare , insieme a quelle che devono ancora iniziare che portano con se il loro orario di inizio .

    Altra cosa importante che ho dimenticato di dirti e' la seguente : gli orari di inizio partite hanno tutte un'ora indietro rispetto al mio orario e non possono essere cambiati dal sito in questione , potresti magicamente aggiungere in automatico un'ora in piu' rispetto a loro ?

    Questi giorni andavo molto di fretta e ho fatto un po di confusione , poco fa ho riflettuto bene sul tutto ed ecco la maschera finale di come dovrebbe essere fatta

    si notano due colonne in piu che vanno lasciate libere per altre cose che servono a me e sarebbero le colonne D - L

    altro punto importante e' la colonna H , siccome dipende se si scaricano dati regressi oppure futuri , se sono regressi danno il risultato , se sono futuri danno orario e dobbiamo separarli come da colonne B e QR .

    Riguardo ad altre variazioni rimane come detto in precedenza.

    La risposta è stata utile?

    0 commenti Nessun commento