Condividi tramite

Excel: importa dati da pagina web non disponibile su mac!

Anonimo
2017-10-30T10:17:47+00:00

Buongiorno,

ho a lungo cercato la funzione di excel che consente di importare dati da una pagina web (esistono molti video su internet e post anche sulla pagina di supporto microsoft). In particolare la funzione che cerco è la seguente: https://support.office.com/it-it/article/Connettersi-a-una-pagina-Web-Power-Query-b2725d67-c9e8-43e6-a590-c0a175bd64d8

Dopo inutili ricerca sul mio software (excel versione 15.39 con abbonamento office 365), ho contattato il supporto. Il supporto office mi ha detto che probabilmente lo strumento che cerco è disponibile soltanto per il software excel per windows e non anche per il software excel per mac.

Come è possibile che non ci sia la possibilità di importare dati dal web in ambiente macintosh? Qualcuno sa risolvere il mio problema e indicarmi un metodo alternativo per importare dati da una pagina web ad excel?

Grazie

Andrea

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

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

  1. Anonimo
    2017-11-07T13:59:54+00:00

    Ciao Andrea,

    in attesa che Norman, puoi visitare il nostro blog dedicato anche alle macro TechNet

    Spero ti sia utile, rimango comunque a disposizione

    Buona giornata

    Andrea

    La risposta è stata utile?

    0 commenti Nessun commento

6 risposte aggiuntive

Ordina per: Più utili
  1. Anonimo
    2017-10-30T12:01:28+00:00

    Ciao Andrea,

    ho a lungo cercato la funzione di excel che consente di importare dati da una pagina web (esistono molti video su internet e post anche sulla pagina di supporto microsoft). In particolare la funzione che cerco è la seguente: https://support.office.com/it-it/article/Connettersi-a-una-pagina-Web-Power-Query-b2725d67-c9e8-43e6-a590-c0a175bd64d8

    Dopo inutili ricerca sul mio software (excel versione 15.39 con abbonamento office 365), ho contattato il supporto. Il supporto office mi ha detto che probabilmente lo strumento che cerco è disponibile soltanto per il software excel per windows e non anche per il software excel per mac.

    Purtroppo, lo strumento Power Query non è disponibile nell'ambiente Mac.

    Nell'ambiente Mac, puoi creare un a una query web che è un file di testo salvato con un'estensione di file .iqy. Potresti creare il file di testo con Word o un altro  Editor di testo. Il file query web contiene l'URL della pagina web che contiene i dati di interesse.

    Pe eseguire la query, prova:

    • Scheda Dati
    • Gruppo Carica dati esterni
    • Esegui query salvata
    • Seleziona un file di query da eseguire nella finestra di dialogo Scegli una query
    • Pulsante Importa dati

    In alternativa, potrei pubblicare una macro per eseguite la query da  Excel 2016 per Mac.

    ===

    Regards,

    Norman

    La risposta è stata utile?

    1 persona ha trovato utile questa risposta.
    0 commenti Nessun commento
  2. Anonimo
    2017-10-30T17:23:33+00:00

    Norman, ti ringrazio molto per l'aiuto che mi stai dando.

    Purtroppo riscontro dei problemi anche utilizzando la macro di prova che mi hai inviato. Per una migliore comprensione di ciò che accade aprendo il file in ambiente macintosh, ti invito a guardare lo screen di ciò che mi appare: https://drive.google.com/open?id=0B9gMhbTsQE4kSzBxMVRqbGJpcnc

    Un saluto!

    Andrea

    Ps: è la prima volta che mi trovo ad avere problemi su excel. Fino ad ora l'avevo trovato sempre molto più completo rispetto i competitor, numbers in primis (il quale non ha nemmeno le matrici!).

    La risposta è stata utile?

    0 commenti Nessun commento
  3. Anonimo
    2017-10-30T17:05:34+00:00

    Ciao Andrea,

    Grazie per la tua risposta Norman!

    Ho creato un file tramite word con esclusivamente l'indirizzo web; dopodiché ho salvato il file in formato .iqy.

    Tuttavia ora ho difficoltà a trovare il comando che mi dici nella scheda "dati": purtroppo non vedo alcun comando "carica dati esterni > esegui query salvata". Tutto ciò che vedo nella scheda dati è quello che si vede nell'immagine che segue:

     

     

    Inoltre se seleziono "nuova query da database" mi appaiono solo due opzioni: "ODBC SQL server" e "Da database" (ho provato a selezionare "Da database" e mi esce il seguente messaggio di errore: "Microsoft Excel non riesce a completare l'operazione perché Gestione driver ODBC non è installato. Per installare Gestione driver ODBC, eseguire il programma di installazione e installare il driver di database per il tipo di database a cui si vuole accedere.")

    Mi trovo in una situazione piuttosto difficile in quanto non possiedo un Mac e le mie versioni di Excel sono inglesi. Per caso, e insolitamente, per un paio di giorni ho avuto accesso ad un Mac ma esso e suo padrone sono andati via. Poi. la versione di Office  sul Mac era Office 2011. Mi aspetto di avere il piacere discutibile di rinnovare la mia conoscenza di quel Mac in un paio di giorni.

    Nel frattempo, prova la seguente macro che, per gli scopi di dimostrarzione, scarica i dati storici relativi ai prezzi delle azioni di una società.

    '=========>>

    Option Explicit

    '--------->>

    Public Sub Tester()

        Dim WB As Workbook

        Dim EseguiQuerySH As Worksheet, ReportSH As Worksheet

        Dim rngStartDate As Range, rngEndDate As Range

        Dim destRng As Range, rngData As Range, rngSimboloAzionari As Range

        Dim dStartDate As Date, dEndDate As Date

        Dim sSimbolo As String, sUrl As String

        Dim QTable As QueryTable

        Dim LRow As Long

        Const sFoglioEseguiQuery As String = "Esegui_Query"      '<<=== Modifica

        Const sFoglioReport As String = "REPORT"                       '<<=== Modifica

        Const sCellaSimbolo As String = "D10"                             '<<=== Modifica

        Const sCellaInizio As String = "D11"                                 '<<=== Modifica

        Const sCellaFine As String = "D12"                                   '<<=== Modifica

        Const sBaseUrl = _

           "**http://finance.google.com/finance/historical?q=**"    '<<=== Modifica

        Set WB = ThisWorkbook

        With WB

            Set EseguiQuerySH = .Sheets(sFoglioEseguiQuery)

            Set ReportSH = .Sheets(sFoglioReport)

        End With

        On Error GoTo XIT

        With Application

            .ScreenUpdating = False

            .DisplayAlerts = False

            .Calculation = xlCalculationManual

        End With

        With EseguiQuerySH

            Set rngSimboloAzionari = .Range(sCellaSimbolo)

            Set rngStartDate = .Range(sCellaInizio)

            Set rngEndDate = .Range(sCellaFine)

        End With

        dStartDate = rngStartDate.Value

        dEndDate = rngEndDate.Value

        sSimbolo = rngSimboloAzionari.Value

        With ReportSH

            Set destRng = .Range("A1")

            .UsedRange.Cells.ClearContents

            sUrl = sBaseUrl & sSimbolo

            sUrl = sUrl & "&startdate=" _

                   & MonthName(Month(dStartDate), True) & _

                   "+" & Day(dStartDate) & "+" _

                   & Year(dStartDate) & _

                   "&enddate=" _

                   & MonthName(Month(dEndDate), True) & _

                   "+" & Day(dEndDate) & "+" _

                   & Year(dEndDate) & "&output=csv"

            Set QTable = .QueryTables.Add( _

                         Connection:="URL;" & sUrl, _

                         Destination:=destRng)

            With QTable

                .BackgroundQuery = True

                .TablesOnlyFromHTML = False

                .Refresh BackgroundQuery:=False

                .SaveData = True

            End With

            With destRng

                .CurrentRegion.Columns(1).TextToColumns _

                        Destination:=.Cells(1), _

                        DataType:=xlDelimited, _

                        TextQualifier:=xlDoubleQuote, _

                        ConsecutiveDelimiter:=False, _

                        Tab:=True, _

                        Semicolon:=False, _

                        Comma:=True, _

                        Space:=False, _

                        other:=False

            End With

            .Columns("A:G").ColumnWidth = 12

            LRow = LastRow(ReportSH, .Columns("A:A"))

            Set rngData = .Range("A1:G" & LRow)

            With rngData

                .EntireColumn.ColumnWidth = 12

                .HorizontalAlignment = xlCenter

                .VerticalAlignment = xlBottom

            End With

            With .Sort

                .SortFields.Add _

                        Key:=rngData.Columns(1), _

                        SortOn:=xlSortOnValues, _

                        Order:=xlAscending, _

                        DataOption:=xlSortNormal

                .SetRange rngData

                .Header = xlYes

                .MatchCase = False

                .Orientation = xlTopToBottom

                .SortMethod = xlPinYin

                .Apply

                .SortFields.Clear

            End With

        End With

    XIT:

        On Error GoTo XIT

        With Application

            .ScreenUpdating = True

            .DisplayAlerts = True

            .Calculation = xlCalculationAutomatic

        End With

    End Sub

    '--------->>

    Public Function LastRow(SH As Worksheet, _

                            Optional rng As Range, _

                            Optional minRow As Long = 1, _

                            Optional sPassword As String)

        Dim bProtected As Boolean

        With SH

            If rng Is Nothing Then

                Set rng = .Cells

            End If

            bProtected = .ProtectContents = True

            If bProtected Then

                Application.ScreenUpdating = False

                .Unprotect Password:=sPassword

            End If

        End With

        On Error Resume Next

        LastRow = rng.Find(What:="*", _

                           after:=rng.Cells(1), _

                           Lookat:=xlPart, _

                           LookIn:=xlFormulas, _

                           SearchOrder:=xlByRows, _

                           SearchDirection:=xlPrevious, _

                           MatchCase:=False).Row

        On Error GoTo 0

        If LastRow < minRow Then

            LastRow = minRow

        End If

        If bProtected Then

            SH.Protect Password:=sPassword, _

                       UserInterfaceOnly:=True

        End If

        Application.ScreenUpdating = True

    End Function

    '<<=========

    Potresti scaricare il mio file di prova Andrea20171030.xlsm

    ===

    Regards,

    Norman

    La risposta è stata utile?

    0 commenti Nessun commento
  4. Anonimo
    2017-10-30T12:21:36+00:00

    Grazie per la tua risposta Norman!

    Ho creato un file tramite word con esclusivamente l'indirizzo web; dopodiché ho salvato il file in formato .iqy.

    Tuttavia ora ho difficoltà a trovare il comando che mi dici nella scheda "dati": purtroppo non vedo alcun comando "carica dati esterni > esegui query salvata". Tutto ciò che vedo nella scheda dati è quello che si vede nell'immagine che segue:

     

    Inoltre se seleziono "nuova query da database" mi appaiono solo due opzioni: "ODBC SQL server" e "Da database" (ho provato a selezionare "Da database" e mi esce il seguente messaggio di errore: "Microsoft Excel non riesce a completare l'operazione perché Gestione driver ODBC non è installato. Per installare Gestione driver ODBC, eseguire il programma di installazione e installare il driver di database per il tipo di database a cui si vuole accedere.")

    Grazie

    Andrea

    La risposta è stata utile?

    0 commenti Nessun commento