Caros amigos mais uma vez recorro à vossa sabedoria, ja tentei de tudo e não consigo obter os resultados que eu quero. O grande mestre Paulo disponibilizou o seguinte código:
Public Sub Substitui()
'By JPaulo ® Maximo Access
Dim db As DAO.Database
Dim rst As DAO.Recordset
Dim fld As DAO.Field
Dim strSQL As String
Set db = CurrentDb()
strSQL = "SELECT * FROM SuaTabela"
Set rst = db.OpenRecordset(strSQL, dbOpenDynaset)
rst.MoveFirst
Do Until rst.EOF
For Each fld In rst.Fields
If fld.Value = "P" Then
rst.Edit
fld.Value = "Pendente"
rst.Update
End If
Next fld
rst.MoveNext
Loop
rst.Close
Set rst = Nothing
End Sub
Funcionou na perfeição no entanto tenho valores na minha tabela cujo as primeiras 5 letras sao sempre iguais o que eu preciso é de manter essas primeiras 5 letras e substituir tudo o que aparece à direita dessas 5 letras por outro texto. Exemplo:
MGR5W61
MGR5W23
MGR5W24
Preciso de substituir tudo o que aparece à direita do "MGR5W.." (61,23,24) por "Graduate 1.5"
Alguma ideia ?
Forte abraço
Public Sub Substitui()
'By JPaulo ® Maximo Access
Dim db As DAO.Database
Dim rst As DAO.Recordset
Dim fld As DAO.Field
Dim strSQL As String
Set db = CurrentDb()
strSQL = "SELECT * FROM SuaTabela"
Set rst = db.OpenRecordset(strSQL, dbOpenDynaset)
rst.MoveFirst
Do Until rst.EOF
For Each fld In rst.Fields
If fld.Value = "P" Then
rst.Edit
fld.Value = "Pendente"
rst.Update
End If
Next fld
rst.MoveNext
Loop
rst.Close
Set rst = Nothing
End Sub
Funcionou na perfeição no entanto tenho valores na minha tabela cujo as primeiras 5 letras sao sempre iguais o que eu preciso é de manter essas primeiras 5 letras e substituir tudo o que aparece à direita dessas 5 letras por outro texto. Exemplo:
MGR5W61
MGR5W23
MGR5W24
Preciso de substituir tudo o que aparece à direita do "MGR5W.." (61,23,24) por "Graduate 1.5"
Alguma ideia ?
Forte abraço