• Privacywetgeving
    Het is bij Helpmij.nl niet toegestaan om persoonsgegevens in een voorbeeld te plaatsen. Alle voorbeelden die persoonsgegevens bevatten zullen zonder opgaaf van reden verwijderd worden. In de vraag zal specifiek vermeld moeten worden dat het om fictieve namen gaat.

Identiteitskaart uitlezen in Excel

Status
Niet open voor verdere reacties.

Kevinva

Gebruiker
Lid geworden
7 apr 2016
Berichten
65
Onze medewerkers maken geregeld fouten in het overtypen van namen vanop een ID-kaart. Ik zou dit proces dan ook graag automatiseren.
Ik ben op zoek naar een manier om mijn ID-kaart in de viewer te steken (die hebben we al) maar dan moeten de gegevens ingevuld worden in Excel. Dat mag automatisch maar dat mag ook a.d.h.v. een knop zijn.

Het zou er als volgt kunnen uitzien:
CEL A1: Familienaam
CEL A2: Voornaam
CEL A3: Geboortedatum
CEL A4: Rijksregisternummer
CEL A5: Geslacht
... (en zo verder en zo voort)

Een foto mag, maar hoeft op zich niet.
Deze gegevens worden nergens bewaard, dus op zich schenden we ook geen privacy.


Ik heb vernomen dat ik sowieso de software nodig heb? (CHECK)
Ik heb ook toegang tot dit bestand 'EIDLIBCTRLLib.EIDlib', dus ik neem aan dat het op zich wel moet werken?


Is er iemand die mij op weg kan helpen?
 
Het gaat ook niet om Access of Excel maar dat je weet welke functies en methodes er gebruikt kunnen worden uit de EIDLIBCTRLLib.EIDlib bibliotheek en dat je deze na installatie en registratie in de Verwijzingen van het VBA project moet aanvinken.
 
Je hebt 'm toch al? Het is een ActiveX component. Plaats hem in de Windows\System32 folder en registreer hem dan met:
Code:
regsvr32 EIDLIBCTRLLib.EIDlib

Als die naam en extensie goed is.
Daarna in de Verwijzingen van je VBA project deze aanvinken.
Maar of die ook voor Nederlandse ID kaarten werkt zou ik niet weten.
 
Laatst bewerkt:
Probeer het testbestandje.
Als het goed is krijg je een messagebox met de naam.
Je weet dat dan tenminste iets gebeurt.
 

Bijlagen

Laatst bewerkt:
Als dat een troost mag zijn, mij lukt het ook niet.
 
De eID reader staat al 3 jaar op alle bedrijfscomputers en werkt perfect. Maar het is omdat de werknemers fiches van klanten moeten invullen, heel vaak worden fouten in namen en rijksregisternummers geschreven waardoor er dus ook fouten optreden. Om dit tegen te gaan willen wij het proces vergemakkelijken door gewoon de gegevens rechtstreeks in Excel uit te lezen en dat wij op die manier een afdruk hebben.

De .dll moet volgens mij niet meer geregistreerd worden aangezien dit al lang gebeurd is. Ik ben hier al 2 weken mee bezig en heb al deze zaken al geprobeerd maar steeds zonder succes. De ICT afdeling van het bedrijf heeft dit ook al bekeken en die vinden het probleem ook niet, althans het lukt hen niet om een ID-kaart uit te lezen.
 
Laat eens het Verwijzigen schermpje van dat VBA project zien.
 
@kevin
Zie testbestand in bericht#8 en beantwoord bericht#11.
Je hebt toch geen 64-bit computer?
 
Laatst bewerkt:
Ik bedoel van Kevin zelf.
Het is een 32-bit component, dat werkt ook op een 64bit Windows.

Als de registratie goed is gedaan en de Verwijzing aanwezig kan je deze voorbeeldcode testen.
Nogmaals, dat is voor een Belgische ID kaart. Tevens is de code voor VB van Visual Studio:

Code:
Private Sub Command1_Click(ByVal eventSender As System.Object, ByVal eventArgs As System.EventArgs) Handles Command1.Click
 ' Written by Sylvain Kusters 
 ' Free to use to everyone
 ' If you come with better solution (quicker) please let me also profit from your code.
 ' sk@startnet.be 
 ' Visit also www.filmclub.info     

    Dim lHandle As Integer

        'BEID_ Kaart Info
        Dim strCardNumber As String
        Dim strBegValDag, strBegVal, strBegValMaand As Object
        Dim strBegValJaar As String
        Dim strEndValDag, strEndVal, strEndValMaand As Object
        Dim strEndValJaar As String
        Dim strIssuingMunicipality As String
        'BEID Persoons Info
        Dim strName As String
        Dim strFirstName1 As String
        Dim strBirthPlace As String
        Dim strBirthDate As String
        Dim strGender As String
        Dim strNationality As String
        Dim strNationalNumber As String
        'BEID Adres Info
        Dim strStreet As String
        Dim strZIPCode As String
        Dim strMunicipality As String
        'BEID PICTURE
        Dim PictureFileName As String
        Dim FirstPath As String
        Dim EndPath As String
        Dim Path As String

        Dim RetStatus As EIDLIBCTRLLib.RetStatus
        Dim MapColPicture As New EIDLIBCTRLLib.MapCollection
        Dim MapColID As New EIDLIBCTRLLib.MapCollection
        Dim MapColAddress As New EIDLIBCTRLLib.MapCollection
        Dim CertifCheck As New EIDLIBCTRLLib.CertifCheck

        RetStatus = EIDlib1.Init("", 0, 0, lHandle)
        If (RetStatus.GetGeneral = 0) Then
            RetStatus = EIDlib1.GetID(MapColID, CertifCheck)
            strChipNumber = MapColID.GetValue("ChipNumber")
            strCardNumber = MapColID.GetValue("CardNumber")
            strBegVal = MapColID.GetValue("BeginValidityDate")
            strEndVal = MapColID.GetValue("EndValidityDate")
            strIssuingMunicipality = MapColID.GetValue("IssuingMunicipality")
            strName = MapColID.GetValue("Name")
            strFirstName1 = MapColID.GetValue("FirstName1")
            strBirthDate = MapColID.GetValue("BirthDate")
            strBirthPlace = MapColID.GetValue("BirthPlace")
            strGender = MapColID.GetValue("Gender")
            strNationality = MapColID.GetValue("Nationality")
            strNationalNumber = MapColID.GetValue("NationalNumber")

            'Opsplitsen begindatum

            strBegValDag = VB.Right(strBegVal, 2)
            strBegValMaand = Mid(strBegVal, 5, 2)
            strBegValJaar = VB.Left(strBegVal, 4)
            'Opsplitsen einddatum

            strEndValDag = VB.Right(strEndVal, 2)
            strEndValMaand = Mid(strEndVal, 5, 2)
            strEndValJaar = VB.Left(strEndVal, 4)
            txtbxCardNumber.Text = strCardNumber
            txtbxBeginValidityDate.Text = strBegValDag & "/" & strBegValMaand & "/" & strBegValJaar
            txtbxEndValidityDate.Text = strEndValDag & "/" & strEndValMaand & "/" & strEndValJaar
            txtbxIssuingMunicipality.Text = strIssuingMunicipality
            txtbxName.Text = strName
            txtbxFirstName1.Text = strFirstName1
            txtbxBirthDate.Text = strBirthDate
            txtbxBirthPlace.Text = strBirthPlace
            txtbxGender.Text = strGender
            txtbxNationality.Text = strNationality
            txtbxNationalNumber.Text = strNationalNumber

        End If

        RetStatus = EIDlib1.GetAddress(MapColAddress, CertifCheck)

        strStreet = MapColAddress.GetValue("Street")

        strZIPCode = MapColAddress.GetValue("ZIPCode")

        strMunicipality = MapColAddress.GetValue("Municipality")

        txtbxStreet.Text = strStreet
        txtbxZIPCode.Text = strZIPCode
        txtbxMunicipality.Text = strMunicipality
        ' Picture inladen

        FirstPath = "(unknown)_BELPIC_"
        EndPath = "_4035"
        Path = "c:\Documents and settings\gebruiker\eid-cache"
        PictureFileName = FirstPath & strChipNumber & EndPath
        RetStatus = EIDlib1.GetPicture(MapColPicture, CertifCheck)
        Picture1.Image = System.Drawing.Image.FromFile(Path & "\" & PictureFileName)

        RetStatus = EIDlib1.Exit()

    End Sub

Bron:
https://perevoznyk.wordpress.com/20...rd-from-vba-using-middleware-activex-control/
 
Laatst bewerkt:
@kevin
foutje in de code, nieuw bestand in bericht#8
 
Plaats eidlib.dll in C:\Windows\System32
Volg deze instructies http://www.wikihow.com/Register-a-DLL
Vervang op de site door myfile.dll door eidlib.dll

Probeer het testbestandje.
Als het goed is krijg je een messagebox met de naam.
Je weet dat dan tenminste iets gebeurt.


Sorry, het bestandje werkt niet. Ik kan wel op de knop duwen maar de gegevens laden niet. Ik krijg wel een textbox (Naam).


voorforum.jpg
 
De screenshot ziet er goed uit.
Het feit dat je een textbox krijgt, en geen foutmeldingen, duidt erop dat de code op zich goed is.

Nieuw bestand in bericht#8.
Wachtlus toegevoegd het kan zijn dat de code te snel is voor de cardreader.

p.s. ik heb geen cardreader en ook geen belgische id-kaart.
 
De screenshot ziet er goed uit.
Het feit dat je een textbox krijgt, en geen foutmeldingen, duidt erop dat de code op zich goed is.

Nieuw bestand in bericht#8.
Wachtlus toegevoegd het kan zijn dat de code te snel is voor de cardreader.

p.s. ik heb geen cardreader en ook geen belgische id-kaart.

Sorry, het werkt niet. Is er iemand die het wel werkend heeft?
 
Gebruik je Microsoft Edge als browser?
Dat blijkt niet te werken probeer het eens met bv. Google Chrome
 
Gebruik je Microsoft Edge als browser?
Dat blijkt niet te werken probeer het eens met bv. Google Chrome

De browser zal geen grote rol spelen vermoed ik? Gezien het hier om Excel gaat.
Thuis surf ik altijd via Firefox, de werkcomputers zijn standaard op Chrome maar ook IE en Opera staat er op.
 
Ik kan je niet verder meer helpen, omdat ik geen hardware en id-kaart heb.
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan