In Access worden lange gehele getallen geëxporteerd als Double-gegevenstype met decimalen in de indeling dBase IV (. dbf)

Oorspronkelijk KB-nummer:   891775

Symptomen

Wanneer u een Microsoft Office Access-tabel maakt met een lang geheel getal en vervolgens deze tabel exporteert als dBase IV IV (. dbf), worden de waarden geconverteerd naar het gegevenstype Double en worden er decimalen weergegeven.

U kunt bijvoorbeeld de volgende tabel exporteren:

CLUSTERS
23411
111111111
1121212

Wanneer u de gegevens in dBase IV importeert en bekijkt, worden de gegevens op de volgende manier weergegeven:

CLUSTERS
23411,00000
111111111,00000
1121212,00000

Notitie

Wanneer u een numeriek veld in een tabel in Access maakt, gebruikt u de eigenschap FieldSize voor de hoeveelheid ruimte die voor een bepaald veld is toegewezen. Voor numerieke velden kunt u een van de volgende numerieke typen uit een lijst kiezen:

  • Hexadecimal
  • Integer
  • Lang geheel getal
  • Ene
  • Regel
  • ReplicationID
  • Tekens

Standaard is de instelling voor numerieke velden lang geheel geheel. Met de lange integerwaarde worden hele getallen opgeslagen die variëren van ongeveer-2.000.000.000 tot en met + 2.000.000.000. U kunt ook de dubbele waarde kiezen om getallen met decimalen op te slaan.

Oorzaak

Dit probleem treedt op omdat het gegevenstype geheel getal in dBase niet wordt ingevuld. dBase gebruikt numerieke of zwevende gegevenstypen. In Access worden lange gehele getallen met een numeriek gegevenstype in dBase toegewezen.

Tijdelijke oplossing

Gebruik een van de volgende methoden om dit probleem tijdelijk op te lossen:

Methode 1: het databasebestand wijzigen in dBase

Het ontwerp van het databasebestand wijzigen nadat dit is toegevoegd aan de dBase-catalogus. Stel bijvoorbeeld de kolom dec in op 0 (nul). Zie voor meer informatie over het ontwerpen van databasebestanden in dBase de documentatie bij dBase.

Methode 2: Microsoft Office Excel gebruiken om de gegevens op te maken

Gebruik Excel om de gegevens op te maken in de tabel die u hebt geëxporteerd. Ga hiervoor als volgt te werk:

  1. Open in Excel de tabel die u hebt geëxporteerd als Typ dBase IV (*. dbf) van Access.
  2. Maak de cellen een onjuiste opmaak. Selecteer de cellen en klik vervolgens in het menu opmaak op cellen .
  3. Wanneer u de cellen hebt opgemaakt, exporteert u het werkblad als een dBase IV-bestand. Ga hiervoor als volgt te werk:
    1. Klik op Opslaan als in het menu Bestand.
    2. Klik in het vak Opslaan als type op DBF 4 (dBASE IV) (*. dbf) en klik vervolgens op Opslaan.

Methode 3: voorbeeldcode gebruiken om de gegevens op te maken

Microsoft verstrekt programmeervoorbeelden alleen ter illustratie, zonder 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. Microsoft ondersteuningstechnici kunnen u helpen de functionaliteit van een bepaalde procedure te uitleggen. Ze wijzigen deze voorbeelden echter niet voor het toevoegen van functies of het maken van procedures voor het maken van aan uw specifieke eisen.

U kunt het volgende codevoorbeeld gebruiken om het opmaken van gegevens te automatiseren. Het voorbeeld slaat een tabel op als tekstbestand. Vervolgens wordt in Excel het tekstbestand automatisch geopend en opgeslagen in de indeling dBase IV.

Notitie

U moet de bestandsnamen in dit voorbeeld wijzigen zodat deze overeenkomen met de namen van uw bestanden.

Sub exportFormat()

    Dim xlApp       As Excel.Application
    Dim xlBook      As Excel.Workbook

    Const SAVETEXT = "C:\testValues.txt"
    Const SAVEDBF = "C:\testDBF.dbf"

    ' Save the table as a text file.
    DoCmd.TransferText acExportDelim, , "Table1", SAVETEXT, TRUE

    ' Set a reference to the Application object.
    Set xlApp =        ' Set a reference to the Workbook object.
    Set xlBook = xlApp.Workbooks.Open(SAVETEXT, , ,        ' Save the file to dBase IV format.
    xlBook.SaveAs Filename:=SAVEDBF, FileFormat:=xlDBF4
    xlBook.Close savechanges:=False

    xlApp.Quit
    Set xlBook = Nothing
    Set xlApp = Nothing

End Sub