dimecres, 9 d’abril de 2014

Taules buides. Recordset buit. Access VBA

Les taules buides són una mica un maldecap.

El primer és que no les pots actualitzar.

Sembla que tenen un registre en blanc però, en realitat, no en tenen cap.Per això, si vols afegir dades cal fer una consulta d'annexió de dades. De fet és lògic.

Però quan la cosa encara és més fastidiosa és quan les converteixes en recordset. Per la mateixa raó, es a dir, perquè en realitat no tenen cap línia, si intentes fer un rs.movefirst, el programa petarà.

Conforme, però com puc saber si hi ha un o més d'un registre o, pel contrari, no hi ha cap?

Una bona solució seria "If rs.EOF And rs.BOF Then":

El que fem es validar que, en un recordset (en aquest cas anomenat rs) el principi [Begining Of File] i el final [End Of File] es troben en la mateixa línia. Per tant, te zero registres!!!

Un exemple de codi:

Private Sub subSumatori()
Set dbs = CurrentDb
Set rs = dbs.OpenRecordset("tempDedicacion")
Dim mbsumatori As String

    If rs.EOF And rs.BOF Then
        MsgBox "No hi ha registres de temps imputats aquest dia"
       Usuaria = ""
        lblUsuaria.Caption = Usuaria
       rs.Close
        End
    Else
         rs.MoveFirst
            While Not rs.EOF
                mbsumatori = mbsumatori & "Dia " & data....
                rs.MoveNext
            Wend
         rs.Close
            MsgBox mbsumatori
    End If

End sub

Tags:
Empty table. Empty recordset
Tablas vacías. Recordset vacio
Taules buides. Recordset buit.
VBA Access
Error recordset vacío
Error recordset buit

Cap comentari:

Publica un comentari a l'entrada