# Reporta en una hoja de excel y almacena los datos en otra hoja de excel REPORTEADOR!...



## gusmario2011 (Aug 6, 2011)

Hola amigos...

Aqui una aportacion, se trata de una hoja de excel donde se nos pide elijamos o pongamos informacion requerida, para reportar algo, en este caso es un reporte de defectos, donde los datos que ingresemos en las celdas elegidas, seran agregadas a otra hoja de excel, osea un reporte o reporteador, donde se van acumulando los datos uno tras otro, ademas en el reporte en la parte baja nos aparecera una cadena con la ultima informacion que ingresamos. El reporte o reporteador esta programado para aparecer "C", llamado c:\misdatos.csv , que servira como dije de almacen para todos los datos que ingresen con el boton salvar datos, osea sera un reporteador, espero les sea tan util como a mi, aqui el codigo de la descarga directa, donde podran optener el reporte para que lo prueben:
LINK:
http://www.megaupload.com/?d=8DOQB6CP

Aqui el codigo del boton "Guardar datos", pongan el codigo en un modulo...

Option Explicit
Sub Guarda()
  Dim str As String
  Dim Incompleto As Boolean
  'comentario de datos incompletos desactivado.
   Incompleto = False
   'informacion se completo en todos los campos?
   If Range("C5") = "" Then Incompleto = True
   If Range("C9") = "" Then Incompleto = True
   If Range("C13") = "" Then Incompleto = True
   If Range("F5") = "" Then Incompleto = True
   If Range("F6") = "" Then Incompleto = True

   'si no se completo mostrar mensaje.
   'y hacer un focus en la celda "C5".
   If Incompleto Then
      MsgBox "Datos incompletos, no se grabo informacion"
      Range("C5").Select
      Exit Sub
   End If

 'pasar la informacion de las celdas nombradas al erchivo excel.
   str = Now
   str = str & "," & Range("C5")
   str = str & "," & Range("C6")
   str = str & "," & Range("C7")
   str = str & "," & Range("C8")
   str = str & "," & Range("C9")
   str = str & "," & Range("C10")

   str = str & "," & Range("C13")
   str = str & "," & Range("C14")
   str = str & "," & Range("C15")

   str = str & "," & Range("F5")
   str = str & "," & Range("F6")
   str = str & "," & Range("F7")
   str = str & "," & Range("F7")
   str = str & "," & Range("F9")

   str = str & "," & Range("F13")
   str = str & "," & Range("F14")
   str = str & "," & Range("F15")
   str = str & "," & Range("F16")

  'damos la direccion del archivo receptor de los datos.
  Open "c:\misdatos.csv" For Append As #1
  Print #1, str
  Close #1

  'limpiamos los campos de cualquier dato ingresado anteriormente.
  Range("C5:C10").ClearContents
  Range("C13").ClearContents
  Range("F5:F6").ClearContents
  Range("F8").ClearContents
  Range("F13:F16").ClearContents

  'celda que mostrara los ultimos datos ingresados en forma de cadena.
  Range("B22") = str

  'mostrar mensaje de datos guardados con exito.
  MsgBox "Datos guardados exitosamente"

  'le damos la ubicacion al excel de la celda activa despues de realizar el procedimiento.
  Range("C5").Select
End Sub



Excelente Foro...
Que tengan un excelente dia!...


----------



## UliCs (Aug 6, 2011)

Gracias por compartir. ahora lo checo para ver si me sirve. Thks


----------



## gusmario2011 (Aug 6, 2011)

De nada, de esto se trata el foro de compartir y de ayudar a los demas...

Una cosa solamente... Se vale mejorarlo!!!...


----------



## gusmario2011 (Aug 28, 2011)

con este post doy por cerrado el tema, gracias por seguirme...


----------

