DetailPage-MSS-KB

Knowledge Base

Artikel ID: 120596 - Laatste beoordeling: maandag 19 september 2011 - Wijziging: 3.0

Samenvatting

In Microsoft Excel 97, Microsoft Excel 2000, Microsoft Excel 2002 en Microsoft Office Excel 2003 voor Windows kunnen tekstbestanden met meer dan 65.536 rijen niet in hun geheel worden geopend. U kunt deze bestanden niet openen omdat deze versies van Microsoft Excel zijn beperkt tot 65.536 rijen. Als u een bestand opent dat groter is dan deze limiet, wordt het tekstbestand afgebroken op rij 65.536 en wordt het volgende foutbericht weergegeven:
Het bestand is niet volledig geladen.
Er is echter een macro waarmee u het bestand kunt openen en de tekst automatisch in meerdere werkbladen kunt opsplitsen.

Opmerkingen

Versies van Excel die ouder zijn dan Excel 97, hebben een beperking van 16.384 rijen.

Versies van Excel die nieuwer zijn dan Excel 2003, hebben een beperking van 1.048.576 rijen.

Meer informatie

Microsoft verstrekt deze code zonder enige expliciete of impliciete garantie, daaronder mede begrepen, maar niet beperkt tot impliciete garanties met betrekking tot de verkoopbaarheid en/of geschiktheid voor een bepaald doel. In dit artikel wordt ervan uitgegaan dat u bekend bent met de programmeertaal VBScript, alsmede met de hulpprogramma's waarmee procedures worden gemaakt en waarmee fouten in procedures worden opgespoord. U kunt desgewenst contact opnemen met Microsoft Product Support Services voor uitleg over de functionaliteit van een bepaalde procedure. Microsoft Product Support Services is echter niet bereid de voorbeelden aan te passen om extra functionaliteit toe te voegen of om procedures te maken die aan uw specifieke eisen voldoen. De volgende voorbeeldmacro vraagt naar de naam van een tekstbestand en opent het bestand in het geheugen. Als het aantal rijen groter is dan 65.536 (de limiet voor Excel-werkbladen), wordt het bestand in meerdere werkbladen opgesplitst. Deze macro kan alleen worden gebruikt voor bestanden die als tekstbestand zijn opgeslagen, niet voor andere bestandsindelingen. De macro is niet geschikt voor databasebestandsindelingen.

Omdat dit een macro is, verloopt het openen van een bestand mogelijk aanzienlijk trager dan wanneer u het menu Bestand opent en op Openen klikt.
   'Alle regels die met een aanhalingsteken (') beginnen, zijn opmerkingen. Deze regels zijn niet
   'noodzakelijk voor de uitvoering van de macro.
				
   Sub LargeFileImport()

      'Dimension Variables
      Dim ResultStr As String
      Dim FileName As String
      Dim FileNum As Integer
      Dim Counter As Double
      'Ask User for File's Name
      FileName = InputBox("Please enter the Text File's name, e.g. test.txt")
      'Check for no entry
      If FileName = "" Then End
      'Get Next Available File Handle Number
      FileNum = FreeFile()
      'Open Text File For Input
      Open FileName For Input As #FileNum
      'Turn Screen Updating Off
      Application.ScreenUpdating = False
      'Create A New WorkBook With One Worksheet In It
      Workbooks.Add template:=xlWorksheet
      'Set The Counter to 1
      Counter = 1
      'Loop Until the End Of File Is Reached
      Do While Seek(FileNum) <= LOF(FileNum)
         'Display Importing Row Number On Status Bar
          Application.StatusBar = "Importing Row " & _
             Counter & " of text file " & FileName
          'Store One Line Of Text From File To Variable
          Line Input #FileNum, ResultStr
          'Store Variable Data Into Active Cell
          If Left(ResultStr, 1) = "=" Then
             ActiveCell.Value = "'" & ResultStr
          Else
             ActiveCell.Value = ResultStr
          End If
          
          'For Excel versions before Excel 97, change 65536 to 16384
          If ActiveCell.Row = 65536 Then
             'If On The Last Row Then Add A New Sheet
             ActiveWorkbook.Sheets.Add
          Else
             'If Not The Last Row Then Go One Cell Down
             ActiveCell.Offset(1, 0).Select
          End If
          'Increment the Counter By 1
          Counter = Counter + 1
      'Start Again At Top Of 'Do While' Statement
      Loop
      'Close The Open Text File
      Close
      'Remove Message From Status Bar
      Application.StatusBar = False

   End Sub
				
Opmerking De macro parseert de gegevens niet in kolommen. Na het gebruik van de macro moet u wellicht nog de opdracht Tekst naar kolommen in het menu Gegevens gebruiken om de gegevens op de juiste manier te parseren. Wanneer u deze macro uitvoert op een Macintosh en u een bestand op een pc probeert te openen, moet u het volgende vóór de bestandsnaam plaatsen:
Vaste schijf:Desktop Folder:
waarbij Vaste schijf de naam is van uw vaste schijf. Er staat een spatie tussen de woorden Desktop en Folder.

De informatie in dit artikel is van toepassing op:
  • Microsoft Excel 97 Standard Edition
  • Microsoft Excel 2000 Standard Edition
  • Microsoft Excel 2002 Standard Edition
  • Microsoft Office Excel 2007
Trefwoorden: 
kbimport kbhowto kbcode KB120596
Delen
Extra ondersteuningsopties
Microsoft Community Support-forums
Neem rechtstreeks contact met ons op
Een door Microsoft gecertificeerde partner zoeken
Microsoft Store