Amigo,
Como eu sei que muitas pessoas não sabem acessar DBF através do VB eu te dar o caminho pra isto, nunca use ADO para abrir o seu DBF. O ADO fica com alguns recurso limitados, vc nem conseguirá ver o total de registros com ele.
Por isso estou lhe passando uma rotina com DAO que irá funcionar perfeitamente.
Não vou ensinar a mexer com campo, até porque não sei fazer isso em DAO, só uso ADO, mas com o arquivo DBF acessado vc poderá usar todos os comandos da DAO normalmente como se tivesse trabalhando com uma Tabela do access (MDB).
Com certeza o DAO tem comando para poder fazer isso pra vc.
Espero ter ajudado em algo.
'Em um módulo coloque:
Type TabelaDAO
Database As Database
Recordset As DAO.Recordset
End Type
Public Function Abrir_DAO_DBF(Caminho As String, _
Nome_Arquivo As String, _
Tabela As TabelaDAO)
Dim mDatabase As Database
Dim mRecordset As DAO.Recordset
Set mDatabase = OpenDatabase(Caminho, False, False, "DBASE IV")
Set mRecordset = mDatabase.OpenRecordset(Nome_Arquivo, dbOpenTable)
Set Tabela.Database = mDatabase
Set Tabela.Recordset = mRecordset
End Function
'Em um botão acrescente o seguinte código:
Dim Tab_Estoque As TabelaDAO
Call Abrir_DAO_DBF("C:pastasubpasta", "Estoque", Tab_Estoque)
' O texto "Estoque" é o nome do arquivo DBF se a sua extensão.
' (Estoque.dbf)
' Daqui para frente vc poderá usar os comando da DAO normalmente com o
' seu arquivo DBF.
'Aqui vc incluirá os códigos para alterar o seu campo.
'Use o Help do próprio VB, lá conterá os códigos para alterar o campo
'usando DAO.
'Exemplo de comandos DAO:
Tab_Estoque.Recordset.MoveMin
Tab_Estoque.Recordset.Fields!NomeDoCampoDoArquivo
Ao final do processo vc deverá fechar o arquivo assim:
Tab_Estoque.Recordset.Close
Tab_Estoque.Database.Close
Set Tab_Estoque.Recordset = Nothing
Set Tab_Estoque.Database = Nothing