chrislm
Goto Top

BIC aus Tabelle holen über Bankleitzahlen in Access

Hallo.
Ich bin gerade dabei in Access ein Programm zu basteln welches mit aus der Kontonummer und Bankleitzahl die IBAN Nummer baut. Das hat auch soweit geklappt. Leider scheitert es an der BIC. Von der Bundesbank habe ich mir eine Excelliste heruntergeladen und möchte diese nun als Datensatz integrieren. In einem Formularfeld habe ich dann das berechnete IBAN Feld und das BIC soll er über eine SQL Abfrage in einem Textfeld anzeigen. Nun bekomme ich eine Fehlermeldung :3265 Element in der Auflistung nicht gefunden.

die Abfrage sieht so aus:
Option Compare Database

Private Sub BLZ_AfterUpdate()



Dim kn1 As Long
Dim rst As DAO.Recordset

   Dim merken1 As Long
   
   Dim fso As Object

kn1 = Me.BLZ

  
  befehl = "SELECT BIC_bank.Bankleitzahl, BIC_bank.BIC FROM BIC_bank WHERE (((BIC_bank.Bankleitzahl)='" & kn1 & "'));"  
  

   Set rst = CurrentDb.OpenRecordset(befehl)

   With rst
        If .RecordCount > 0 Then

            
            .MoveLast
            .MoveFirst
            
            While Not .EOF

               
               merken1 = !BIC_bank.BIC

               
               Me.BIC = merken1
                  
               .MoveNext
            Wend
        
        End If
        
   End With
   rst.Close

Content-Key: 224746

Url: https://administrator.de/contentid/224746

Printed on: April 20, 2024 at 02:04 o'clock

Member: Pjordorf
Pjordorf Dec 17, 2013 at 15:07:31 (UTC)
Goto Top
Hallo,

Zitat von @chrislm:
Ich bin gerade dabei in Access ein Programm zu basteln welches mit aus der Kontonummer und Bankleitzahl die IBAN Nummer baut.
Inkl. Prüfziffer? Was machst du wenn die Empfängerbank aber eine andere IBAN verwendet als du berechnest?

Nun bekomme ich eine Fehlermeldung :3265 Element in der Auflistung nicht gefunden.
Wo und an welcher Stelle genau? Oder sollen wir das Erraten?

merken1 = !BIC_bank.BIC
oder hier
Me.BIC = merken1
Gruß,
Peter
Member: filippg
filippg Dec 17, 2013 at 15:23:51 (UTC)
Goto Top
Hallo,

merken1 = !BIC_bank.BIC
referenziert doch gar nicht auf rst. Ich würde auf merken1 = rst.BIC als korrekte Zeile tippen - abgesehen davon, dass ich nicht weiß, wieso das ! vorangestellt ist, und du nicht direkt an Me.BIC zuweist, warum du vorher ein .movelast und movefirst machst etc.

Gruß

Filipp
Member: colinardo
Solution colinardo Dec 17, 2013 updated at 16:12:12 (UTC)
Goto Top
Hallo chrislm,
nur zur Info: IBAN mit Prüfsumme korrekt berechnen: http://www.iban.de/iban-pruefsumme.html

dann zu deinem Code:
das hier anstatt Zeile 32 und 35 deines Codes sollte reichen.
Me.BIC.SetFocus
Me.BIC.Value = rst.Fields("BIC").Value  

und bei dem hier
.MoveLast
 .MoveFirst
ist das MoveLast unnötig wie @fillipg bereits sagte.

Grüße Uwe
Member: chrislm
chrislm Dec 17, 2013 at 16:16:24 (UTC)
Goto Top
Vielen dank an alle. Der letzte Beitrag hat funktioniert.
Ich habe mit .MoveLast und .MoveFirst springen wollen da in der Excel nicht überall die BIC Nummern überall hinter der BLZ stehen. Wenn eine Bank an mehrere Niederlassungen hat, dann haben sie den Eintrag nur bei der Haupt - Bank gemacht und nicht mehr an den Dörfern. Habs aber soweit, wie ich mir das vorgestellt habe.


Noch einmal vielen dank