Solucion para poner a un valor el Autonumerico
Publicado por ju@n@n (141 intervenciones) el 04/03/2005 10:51:13
El otro dia un muxaxo pedia por aki bastante desesperao el codigo para que un campo autonumerico ponerlo = 0, no es mio , no lo tengo probao
***************************************
En cualquier lugar de tu programa podrías llamar a esta función
ReiniciarAutonumerico "Clientes","IdCliente"
Y si quieres darle un valor inicial concreto
ReiniciarAutonumerico "Clientes","IdCliente", 85
Lo que debes tener en cuenta es que la función fallará si la tabla está en uso.
Public Sub ReiniciarAutonumerico(ByVal strNombreTabla As String, ByVal strNombreCampo As String, Optional ByVal ValorInicial)
Dim cat As Object
Dim t As Object
Dim col As Object
Dim p As Object
Set cat = CreateObject("ADOX.Catalog")
Set cat.ActiveConnection = CurrentProject.Connection
Set t = cat.Tables(strNombreTabla)
Set col = t.Columns(strNombreCampo)
Set p = col.Properties("Seed")
If IsMissing(ValorInicial) Then
p.Value = Nz(DMax(strNombreCampo, strNombreTabla), 1)
Else
p.Value = ValorInicial
End If
Set p = Nothing
Set col = Nothing
Set t = Nothing
Set cat = Nothing
End Sub
***************************************
En cualquier lugar de tu programa podrías llamar a esta función
ReiniciarAutonumerico "Clientes","IdCliente"
Y si quieres darle un valor inicial concreto
ReiniciarAutonumerico "Clientes","IdCliente", 85
Lo que debes tener en cuenta es que la función fallará si la tabla está en uso.
Public Sub ReiniciarAutonumerico(ByVal strNombreTabla As String, ByVal strNombreCampo As String, Optional ByVal ValorInicial)
Dim cat As Object
Dim t As Object
Dim col As Object
Dim p As Object
Set cat = CreateObject("ADOX.Catalog")
Set cat.ActiveConnection = CurrentProject.Connection
Set t = cat.Tables(strNombreTabla)
Set col = t.Columns(strNombreCampo)
Set p = col.Properties("Seed")
If IsMissing(ValorInicial) Then
p.Value = Nz(DMax(strNombreCampo, strNombreTabla), 1)
Else
p.Value = ValorInicial
End If
Set p = Nothing
Set col = Nothing
Set t = Nothing
Set cat = Nothing
End Sub
Valora esta pregunta


0