Access - Importar y exportar a archivos txt

 
Vista:

Importar y exportar a archivos txt

Publicado por Vicente (5 intervenciones) el 07/01/2013 16:12:50
Hola, tengo un problemita que no doy resuelto. Tengo archivos de subtítulos de películas con acentos y signos que mi disco multimedia no reconoce y cada vez tengo que reemplazar a mano todos estos caracteres. Quiero construir un formulario que haga el trabajo por mí. Creo que lo mas fácil sería importar el txt a un campo de texto, modificar su contenido (esta parte ya la tengo) y luego exportar, pero no consigo ni importar, ni exportar el contenido del txt a mi campo. Alguna idea?

Gracias
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

Importar y exportar a archivos txt

Publicado por 2pl (461 intervenciones) el 07/01/2013 18:30:00
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
' Esta función devuelve el texto sin acentos    
'  Eduardo@olaz.net 
 
Public Function TextoSinAcentos(ByVal Texto As String) As String
  Dim lngTexto As Long
Dim i As Long
Dim lngPos As Long
Dim strCaracter As String * 1
Dim strNormalizado As String
Dim strConAcentos As String
Dim strSinAcentos As String
lngTexto = Len(Texto)
If lngTexto = 0 Then
    TextoSinAcentos = ""
    Exit Function
End If
strConAcentos = "ÁÀÂÄÃáàâäãÉÈÊËéèêëÍÌÎÏíìîïÓÒÔÖÕóòôöõÚÙÛÜúùûüÝýÿ"
strSinAcentos = "AAAAAaaaaaEEEEeeeeIIIIiiiiOOOOOoooooUUUUuuuuYyy"
For i = 1 To lngTexto
       strCaracter = Mid(Texto, i, 1)        'comparamos el caracter con la cadena con acentos        
       lngPos = InStr(1, strConAcentos, strCaracter, vbBinaryCompare)       'si se ha encontrado coincidencia 
       If lngPos <> 0 Then            'sustituímos el caracter con el que tiene la misma            
                                                     'posición en la cadena sin acentos (o sea la letra sin acentos)            
            strCaracter = Mid(strSinAcentos, lngPos, 1)
       End If
     '... y si no, pues seguimos como si nada        
    TextoSinAcentos = TextoSinAcentos & strCaracter
Next i
End Function
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Importar y exportar a archivos txt

Publicado por vnamura (5 intervenciones) el 07/01/2013 18:52:14
Gracias, pero esa parte ya la tenía resuelta. Mi problema es la importación al campo de texto dónde aplicar la fórmula.

yo lo había hecho así (por si le vale a alguien):

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
Private Sub bt_acentos_Click()
'restringir-simbolos-acentos-y-caracteres-campo-texto
'Declaramos las variables
Const carConAc As String = "áéíóú¡¿"
Const carSinAc As String = "aeiou  "
Dim vTexto As String
 
Dim i As Integer, largoTexto As Integer
Dim mtzConAc(Len(carConAc))
Dim mtzSinAc(Len(carSinAc))
'Rellenamos la primera matriz con acentos
For i = 1 To Len(carConAc)
mtzConAc(i) = Mid(carConAc, i, 1)
Next
'Rellenamos la segunda matriz sin acentos
For i = 1 To Len(carConAc)
mtzSinAc(i) = Mid(carSinAc, i, 1)
Next
'Asignamos valor a las variables
vTexto = Nz(Me.TxtCampo.Value, "")
'Si no se ha escrito nada no se ejecuta nada
If vTexto = "" Then Exit Sub
'Cogemos la longitud del texto
largoTexto = Len(vTexto)
'Iniciamos el proceso de reemplazo
For i = 1 To Len(carConAc)
vTexto = Replace(vTexto, mtzConAc(i), mtzSinAc(i))
Next i
'Reescribimos el texto sin acentos
Me.TxtCampo.Value = vTexto
End Sub


No es mía la función pero funciona de coña.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Importar y exportar a archivos txt

Publicado por 2pl (461 intervenciones) el 07/01/2013 19:38:57
No entiendo tu problema. Si la función devuelve un campo sin acento, solo tendrias que actualizar tu campo con ese devuelto.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Importar y exportar a archivos txt

Publicado por Vicente (5 intervenciones) el 07/01/2013 19:43:08
El problema es que no tengo una tabla con un campo de texto, es un archivo .srt y quiero abrirlo desde access y volver a guardarlo con las modificaciones.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Importar y exportar a archivos txt

Publicado por 2pl (461 intervenciones) el 07/01/2013 19:57:23
No se si esto podria ser tu solución, aunque algo engorrosa.
Vinculas el fichero str, te creas una consulta de creación de tabla desde ese fichero, le pasas la función a la tabla creada y finalmente exporta esa tabla como fichero srt (que no se que formato es).
Suerte
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Importar y exportar a archivos txt

Publicado por Vicente (5 intervenciones) el 07/01/2013 20:11:36
Sería una solución pero el problema es que el nombre del archivo .srt (subtítulos de películas) cambia siempre. Me parece que lo único será cortar y pegar en el cuadro de texto y volver a cortar y pegar una vez convertido. De todas maneras, creo que la capacidad del cuadro de texto es menor que el tamaño del archivo y voy a tener que hacerlo por partes. Estoy buscando pero no encuentro la capacidad máxima que tienen cuando son independientes, si lo vinculo lo puedo poner a un memo pero de la otra manera creo que tienen un límite, no?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar