RUN TIME ERROR "13"
Quando eu chego neste ponto do programa:
' Cria campos para tabela de usuários
Set campo = tabela.CreateField("regidn", dbLong)
campo.Attributes = dbAutoIncrField
tabela.Fields.Append campo
Aparece a mensagem RUN TIME ERROR "13" Type mismatch.
Aguém sabe como posso resolver?
Desde já agradeço a quem puder me ajudar.
' Cria campos para tabela de usuários
Set campo = tabela.CreateField("regidn", dbLong)
campo.Attributes = dbAutoIncrField
tabela.Fields.Append campo
Aparece a mensagem RUN TIME ERROR "13" Type mismatch.
Aguém sabe como posso resolver?
Desde já agradeço a quem puder me ajudar.
cara... vc esta tendo um problema de tipo de varÃavel.. campo... por exemplo...
se vc cria uma variavel
e depois tenta faer isso...
irá retornar esse erro... verifique nesse seu caso... se o tipo de campo está correto.. quanto ao dbLong e dbautoIncrField...
se vc cria uma variavel
Dim i as integer
e depois tenta faer isso...
j = cdate(i)
irá retornar esse erro... verifique nesse seu caso... se o tipo de campo está correto.. quanto ao dbLong e dbautoIncrField...
preciso de outras soluções, para o meu problema........
BOM PELO Q VI DEVE SER DAO
ESSA FUNÇÃO FAZ EXATAMENTO ISSO Q VC PEDIU
Public Sub sbDB_CriaCampo(ByVal sTabela As String, ByVal sNomeCampo As String, _
Optional ByVal nTipoCampo As DataTypeEnum = dbText, _
Optional ByVal nTamanho As Long, _
Optional ByVal nAtributos As FieldAttributeEnum, _
Optional ByVal blnCriarTabela As Boolean = False, Optional ByVal blnAceitarCompZero As Boolean = True, Optional ByVal nPosicaoOrdinal As Integer)
'
'--> Se a tabela não existir então crie
On Error GoTo erro_
Dim tabTabela As TableDef
Dim fldCampo As Field
' If blnCriarTabela Then 'FAB 27nov01
' If fcDB_ExisteTabela(sTabela) Then Exit Sub
' Else
' If fcDB_ExisteCampo(sTabela, sNomeCampo) Then Exit Sub
' End If
' If blnCriarTabela Then
' Set tabTabela = DB1.CreateTableDef(sTabela)
' Else
Set tabTabela = DB1.TableDefs(sTabela)
' End If
Set fldCampo = tabTabela.CreateField(sNomeCampo, nTipoCampo)
If nTamanho > 0 Then fldCampo.Size = nTamanho
If nAtributos > 0 Then fldCampo.Attributes = nAtributos
If nTipoCampo = dbText Or nTipoCampo = dbMemo And blnAceitarCompZero = True Then fldCampo.AllowZeroLength = True
fldCampo.OrdinalPosition = nPosicaoOrdinal
tabTabela.Fields.Append fldCampo
If blnCriarTabela Then DB1.TableDefs.Append tabTabela
Set fldCampo = Nothing
Set tabTabela = Nothing
Exit Sub
erro_:
MsgBox Err.Number & ", " & Err.Description, vbCritical, "Erro"
End Sub
ESPERO TER AJUDADO
ESSA FUNÇÃO FAZ EXATAMENTO ISSO Q VC PEDIU
Public Sub sbDB_CriaCampo(ByVal sTabela As String, ByVal sNomeCampo As String, _
Optional ByVal nTipoCampo As DataTypeEnum = dbText, _
Optional ByVal nTamanho As Long, _
Optional ByVal nAtributos As FieldAttributeEnum, _
Optional ByVal blnCriarTabela As Boolean = False, Optional ByVal blnAceitarCompZero As Boolean = True, Optional ByVal nPosicaoOrdinal As Integer)
'
'--> Se a tabela não existir então crie
On Error GoTo erro_
Dim tabTabela As TableDef
Dim fldCampo As Field
' If blnCriarTabela Then 'FAB 27nov01
' If fcDB_ExisteTabela(sTabela) Then Exit Sub
' Else
' If fcDB_ExisteCampo(sTabela, sNomeCampo) Then Exit Sub
' End If
' If blnCriarTabela Then
' Set tabTabela = DB1.CreateTableDef(sTabela)
' Else
Set tabTabela = DB1.TableDefs(sTabela)
' End If
Set fldCampo = tabTabela.CreateField(sNomeCampo, nTipoCampo)
If nTamanho > 0 Then fldCampo.Size = nTamanho
If nAtributos > 0 Then fldCampo.Attributes = nAtributos
If nTipoCampo = dbText Or nTipoCampo = dbMemo And blnAceitarCompZero = True Then fldCampo.AllowZeroLength = True
fldCampo.OrdinalPosition = nPosicaoOrdinal
tabTabela.Fields.Append fldCampo
If blnCriarTabela Then DB1.TableDefs.Append tabTabela
Set fldCampo = Nothing
Set tabTabela = Nothing
Exit Sub
erro_:
MsgBox Err.Number & ", " & Err.Description, vbCritical, "Erro"
End Sub
ESPERO TER AJUDADO

o problema é que eu não lembro o q devo fazer, o q será q deve estar faltando para q o programa rode sem erro?
Tópico encerrado , respostas não são mais permitidas