Tengo un tabla que se llama Ciudades, dentro hay un campo que se llama capital y quiero que el parentesis que tengo dentro me lo inserte en otro campo llamado pais y lo elimine del campo capital, Como puedo hacer esta consulta? Ejemplo Capital Baghdad (Iraq) y quiero que salga: Capital Baghdad Pais Iraq RESPUESTAS: =========== JUAN M AFAN DE RIBERA: primero, deberías copiar esta función en un módulo estandar. Function SacarPais(cadena As String, borrarPais As Boolean) As String Dim pos As Long Dim longitudPais As Integer Dim longitudCapital As Integer pos = InStr(cadena, "(") If pos > 0 Then longitudPais = Len(cadena) - (pos - 1) longitudCapital = pos - 1 If borrarPais = True Then SacarPais = Left(cadena, longitudCapital) Else SacarPais = Right(cadena, longitudPais) End If Else If borrarPais = True Then SacarPais = cadena Else SacarPais = "n/a" End If End If End Function y después crear una consulta de actualización sobre la tabla Ciudades, y en la que actualizaras, por un lado, el campo Capital a: SacarPais([capital];Verdadero) que extraería el nombre de la ciudad ... y por otro lado, el campo Pais a: SacarPais([capital];Falso) que extraería el nombre del país (con paréntesis, y si no hubiera ninguno, escribiría "n/a") UPDATE Capitales SET Capitales.Capital = SacarPais([capital],True), Capitales.Pais = SacarPais([capital],False); espero que te sirva. Antes de nada, haz una copia de tu tabla Ciudades, por si acaso saliera alguna cosa rara (que en principio, no tiene por qué, pero... eso... por si acaso, que nunca se sabe) MARJAN ====== Si creas dos nuevos campos, p.e. Capital2 y País. Haces una consulta de actualización. En Actualizar a... de estos campos pones para País : Mid([capital];(Instr([capital];"(")+1);(Instr([capital];")")-(Instr([capital];"(")+1))) Y Para capital : Left([capital];Instr([capital];"(")-1) Y ejecutas la consulta