tengo el siguien problema: lo que quiero hacer es que al hacer click sobre un boton se guarde en un archivo .txt los datos de unas cajas de texto, el problema es que siempre me lo guarda sobre la misma linea y lo sobre escribe.... Como puedo hacer para decir que cada ves que aprete el boton valla a una linea distinta????
Les copio el codigo :) desde ya gracias
Private Sub Command2_Click()
Dim canalLibre As Integer
'Obtenemos un canal libre que nos dará
'el sistema oparativo para poder operar
canalLibre = FreeFile
'Abrimos el fichero en el canal dado
Open "C:\fichero.txt" For Output As CDbl(TextAlumnos.Text)
'Escribimos el contenido del TextBox al fichero
Print #canalLibre, TextNombre.Text & " " & TextLegajo.Text & " "; TextTotal.Text
Close #canalLibre
TextCanallibre.Text = canalLibre
End Sub
Tiene facil solución, pon varios print
ej:
#print canalLibre, dato1
#print canalLibre, dato2
#print canalLibre, dato3
Creo que asi te guarda cada uno en una liniea, creo.
Cita de: reydelmundo11 en 9 Junio 2005, 15:48 PM
Tiene facil solución, pon varios print
ej:
#print canalLibre, dato1
#print canalLibre, dato2
#print canalLibre, dato3
Creo que asi te guarda cada uno en una liniea, creo.
Nop asi no se puede :S, la idea es que por ejemplo.. cargo los datos de 1 alumno en una caja de texto entonces con un boton le pongo que lo garde en el .txt, despues apretar otro boton para decirle que escriba en la linea de abajo y asi cuando vuelva a apretar el boton para guardar, lo escriba en el renglon de abajo :)
a ver si ahi se entiende :P
Abriendo el archivo en modo Append siempre va a escribir al final del archivo :).
Private Sub cmdSave_Click()
Dim hFile%
hFile = FreeFile
Open "C:\MyFile.txt" For Append As #hFile
Print #hFile, "Mis datos"
Close #hFile
End Sub
Saludos.
Cita de: Slasher-K en 10 Junio 2005, 00:31 AM
Abriendo el archivo en modo Append siempre va a escribir al final del archivo :).
Private Sub cmdSave_Click()
Dim hFile%
hFile = FreeFile
Open "C:\MyFile.txt" For Append As #hFile
Print #hFile, "Mis datos"
Close #hFile
End Sub
Saludos.
Gracias... pero ahora tengo otro problema :S... mira el codigo fuente del boton "guardar" me quedo asi:
Private Sub Comguardar_Click()
Dim canalLibre As Integer
'Obtenemos un canal libre que nos dará
'el sistema oparativo para poder operar
canalLibre = FreeFile
'Abrimos el fichero en el canal dado
Open "C:\fichero.txt" For Append As CDbl(TextAlumnos.Text)
'Escribimos el contenido del TextBox al fichero
Print #canalLibre, TextNombre.Text & " " & TextLegajo.Text & " "; TextTotal.Text
Close #canalLibre
End Sub
Pero cuando apreto un boton que sirve para pasar al prximo alumno y despues quiero apretar el boton "guardar" me dice: error 52, bud file name or number. y aparece en amarillo el renglon que dice: Print #canalLibre, TextNombre.Text & " " & TextLegajo.Text & "
aca les paso el codigo del boton "pasar al proximo alumno"
Option1.Value = False
Option2.Value = False
Option3.Value = False
Option4.Value = False
Option5.Value = False
Option6.Value = False
Option7.Value = False
Option8.Value = False
Option9.Value = False
TextTotal.Text = 0
Text1.Text = 0
Text2.Text = 0
Text3.Text = 0
Text4.Text = 0
Text5.Text = 0
Text6.Text = 0
Text7.Text = 0
Text8.Text = 0
Text9.Text = 0
TextNombre.Text = " "
TextLegajo.Text = " "
NGrupo.Text = 1
TextAlumnos.Text = CDbl(TextAlumnos.Text) + 1
Bueno, si alguien puede decirme porque es eso les agradeceria :)
ahhhh ok no sabia, la proxima lo escribo como me decis
que alguien me responda :(
Es porque no hay coherencia entre el id del fichero cuando lo abres, y cuando trabajas con él:
Open "C:\fichero.txt" For Append As CDbl(TextAlumnos.Text)
'Escribimos el contenido del TextBox al fichero
Print #canalLibre, TextNombre.Text & " " & TextLegajo.Text & " "; TextTotal.Text
Close #canalLibre
Prueba esto:
Open "C:\fichero.txt" For Append As #1
'Escribimos el contenido del TextBox al fichero
Print #1, TextNombre.Text & " " & TextLegajo.Text & " " & TextTotal.Text
Close #1
Creo que yo usaba eso y funciona perfectamente.... Ahora mismo no me acuerdo....
Print #1, Text1.Text & vbcrlf & ....