Läs på engelska

Dela via


Felet "Index låg utanför matrisens gränser" när du importerade data från flera tabeller i en SQL Server databas till en Excel 2013-arbetsbok

Symptom

Tänk dig följande scenario där du försöker importera data från en Microsoft SQL Server 2012-databas till en Microsoft Excel 2013 arbetsbok:

  • Du startar guiden Dataanslutning för att skapa en anslutning från SQL Server-databasen till arbetsboken.
  • Du väljer flera tabeller från databasen.
  • Du väljer hur du vill visa importerade data i arbetsboken. Du kan till exempel välja att skapa en tabell, en pivottabellrapport eller en pivotdiagramrapport.

I det här scenariot får du följande felmeddelande:

Det gick inte att hämta data från datamodellen. Här är felet vi fick: Indexet låg utanför matrisens gränser.

Orsak

Det här problemet uppstår när ett av de valda tabellnamnen slutar med en sträng som matchar ett schemanamn i databasen. Guiden Dataanslutning använder bara tabellnamnen i stället för de fullständigt kvalificerade tabellnamnen när du importerar data från flera tabeller.

Obs! Det här problemet uppstår inte när du använder guiden Dataanslutning för att importera data från en enda tabell. I det här fallet använder guiden Dataanslutning det fullständigt kvalificerade tabellnamnet.

Lösning

Använd någon av följande metoder för att lösa problemet:

  • Använd guiden Dataanslutning för att importera data från en tabell i taget.
  • Se till att inget av dina tabellnamn slutar med en sträng som matchar ett schemanamn och importera sedan data från flera tabeller.
  • När du har fått felmeddelandet som nämns i avsnittet "Symptom" följer du dessa steg för att importera data från flera tabeller:
    1. Klicka på Egenskaper i dialogrutan Importera data.
    2. Klicka på fliken Definition .
    3. I rutan Kommandotext ändrar du tabellnamnen till fullständigt kvalificerade tabellnamn med hjälp av följande format: Database.Schema.TableName