Articulo en borrador, el contenido se esta editando buscando mejorar el formato y la sintaxis, de todas formas no se esperan cambios que impliquen conceptos diferentes.
Contenido
Introducción.
Alcance.
Referencias.
Términos y definiciones.
Contexto de la organización
Soporte
Operación
Se considera una forma de trabajo rápida el uso de números que representan los distintos cursos, con lo cual el empleo del teclado está restringido al sector de bloque numérico, también puede usarse los números en fila del teclado.
Integridad de datos, corrección y complementación de los datos en una base de datos. la formas de perderse pueden ser por añadir datos no válidos a la base de datos, tales como un pedido que hace referencia a un producto no existente.
La forma de pago puede ser contado o en cuotas a través de tarjeta de crédito. Si se abona contado se hace un 10 % de descuento.
Liderazgo
No aplica
Planificación
No aplica
Se empleara un macro para generar la comunicación con el digitador, una serie de ventanas emergentes lo ira guiando en el proceso de ingreso de datos.
Ver diagrama de flujo en la siguiente página, Ilustración 1.
Ilustración 1
Evaluación del desempeño
No se ha evaluado.
Mejora
Versión original.
Contenido
Introducción.
Alcance.
Referencias.
Términos y definiciones.
Contexto de la organización
Soporte
Operación
Introducción
Introducir datos en una planilla de calculo, sin omisiones y con integridad de datos.Alcance
Se hará una método de ingreso de datos que permite cierto intercambio de información, dando la posibilidad de establecer una comunicación con el digitador en el momento que tiene que ingresar los datos.Se considera una forma de trabajo rápida el uso de números que representan los distintos cursos, con lo cual el empleo del teclado está restringido al sector de bloque numérico, también puede usarse los números en fila del teclado.
Referencias
| PROGRAMAS EMPLEADOS | |
| Nombre del programa | Empleo |
| Microsoft Word | Elaboración del texto |
| Microsoft Visio | Elaboración de la ilustracion |
| Microsoft Excel | Elaboración del proyecto que se describe |
| ESTRUCTURAS Y FUNCIONES EMPLEADAS EN EL CÓDIGO | |
| Nombre | Linea de código |
| Option Explicit | 0,01 |
Términos y definiciones
Macro, Secuencia de acciones dentro de la aplicación que el usuario activa pulsando una combinación específica de teclas o un botón dibujado en la planilla.Integridad de datos, corrección y complementación de los datos en una base de datos. la formas de perderse pueden ser por añadir datos no válidos a la base de datos, tales como un pedido que hace referencia a un producto no existente.
Contexto de la organización
Academia, que brinda lo siguientes cursos.| Operador Windows | $ |
5.000
|
|
| Auxiliar Administrativo Contable | $ |
12.000
|
|
| Excel Avanzado | $ |
7.000
|
|
| Diseño Gráfico | $ |
6.500
|
Liderazgo
No aplica
Planificación
No aplica
Soporte
P.C., Sistema Windows, programa Microsoft Excel 2010Operación
Cuando abra el archivo deberá aceptar la ejecución de macros, Excel realiza una advertencia ya que con la funcionalidad de los macros pueden hacerse virus, este código es de mi autoría y esta 100% libre de virus.Se empleara un macro para generar la comunicación con el digitador, una serie de ventanas emergentes lo ira guiando en el proceso de ingreso de datos.
Ingreso de datos
Al presionar el botón, ingresar nuevo, se abre en primer plano una ventana que nos pide ingresar los siguientes datos- nombre y el apellido
- curso
- forma de pago
- cantidad de cuotas (si corresponde)
Cálculo y/o validación de datos
- nombre y el apellido, no permite ingresar un campo en blanco.
- curso, permite ingresar solamente, los numero 1,2,3,4
- forma de pago, permite ingresar solamente los números 1,2
- cantidad de cuotas, (si corresponde, si la forma de pago es con tarjeta)
Consideraciones
Al finalizar los datos son volcados en la planilla debajo del último dato ingresado.Código
| 0.01 | Option Explicit |
| 0.02 | |
| 0.03 | Sub Prueba() |
| 0.04 | |
| 0.05 | 'Variables |
| 0.06 | |
| 0.07 | Dim vNomApe As String |
| 0.08 | Dim vCurso As Integer |
| 0.09 | Dim vForPag As Integer |
| 0.10 | Dim vCanCuo As Integer |
| 0.11 | Dim vNomCurso As String |
| 0.12 | Dim vPrecio As Long |
| 0.13 | Dim vPreCal As Long |
| 0.14 | Dim vForPagNom As String |
| 0.15 | Dim vFil As Integer |
| 0.16 | Dim vCon As Integer |
| 0.17 | |
| 0.18 | 'Formato de los titulos |
| 0.19 | |
| 0.20 | Range("a1:h1").WrapText = True |
| 0.21 | Range("a1:h1").Font.Bold = True |
| 0.22 | Range("a1:h1").Font.Size = 12 |
| 0.23 | Range("a1:h1").Interior.Color = RGB(225, 225, 225) |
| 0.24 | Range("a1:h1").RowHeight = 30 |
| 0.25 | Range("a1:h1").HorizontalAlignment = xlGeneral |
| 0.26 | Range("a1:h1").VerticalAlignment = xlCenter |
| 0.27 | Range("A:H").ColumnWidth = 45 |
| 0.28 | |
| 0.29 | 'esta ultima sentencia la agrego
porque no me ajustaba las columanas en la sentencia Columns("a:i").EntireColumn.AutoFit, cuando |
| 0.30 | 'el titulo quedaba en una columna mas chica y el texto del titulo en 2 lineas |
| 0.31 | |
| 0.32 | 'Titulos |
| 0.33 | |
| 0.34 | [A1] = "Nombre y Apellido" |
| 0.35 | [b1] = "Curso" |
| 0.36 | [c1] = "Forma de pago" |
| 0.37 | [d1] = "Cantidad de cuotas" |
| 0.38 | [e1] = "Valor del curso" |
| 0.39 | [f1] = "Descuento" |
| 0.40 | [g1] = "Precio final" |
| 0.41 | [h1] = "Precio por cuota" |
| 0.42 | |
| 0.43 | Do |
| 0.44 | Columns("a:h").EntireColumn.AutoFit |
| 0.45 | 'Ingreso de los datos |
| 0.46 | |
| 0.47 | Do |
| 0.48 | vNomApe =
Application.InputBox("Ingrese nombre y apellido", "NOMBRE Y APELLIDO", Type:=2) |
| 0.49 | Loop Until vNomApe <> "" |
| 0.50 | |
| 0.51 | Do |
| 0.52 | vCurso =
Application.InputBox("Ingrese curso," & Chr(13) & "1.
Operador Windows" & Chr(13) & "2. Auxiliar Administrativo Contable" & Chr(13) & "3. Excel Avanzado" & Chr(13) & "4. Diseño Gráfico", "CURSO", Type:=1) |
| 0.53 | Loop Until (vCurso = 1) Or (vCurso = 2) Or (vCurso = 3) Or (vCurso = 4) |
| 0.54 | |
| 0.55 | Do |
| 0.56 | vForPag =
Application.InputBox("Ingrese la forma de pago" & Chr(13) &
"1. Contado" & Chr(13) & "2. Tarjeta de credito", "FORMA DE PAGO", Type:=1) |
| 0.57 | Loop Until (vForPag = 1) Or (vForPag = 2) |
| 0.58 | |
| 0.59 | If vForPag = 2 Then |
| 0.60 | |
| 0.61 | Do |
| 0.62 | vCanCuo =
Application.InputBox("Ingrese la cantidad de cuotas", "CANTIDAD DE CUOTAS", Type:=1) |
| 0.63 | Loop Until IsNumeric(vCanCuo) |
| 0.64 | |
| 0.65 | Else |
| 0.66 | vCanCuo = 1 |
| 0.67 | 'sino se pone esto despues da un error de division entre 0 |
| 0.68 | End If |
| 0.69 | |
| 0.70 | 'Calculo |
| 0.71 | |
| 0.72 | Select Case vCurso |
| 0.73 | Case Is = 1 |
| 0.74 | vNomCurso = "Operador Windows" |
| 0.75 | vPrecio = 5000 |
| 0.76 | Case Is = 2 |
| 0.77 | vNomCurso = "Auxiliar Administrativo Contable" |
| 0.78 | vPrecio = 12000 |
| 0.79 | Case Is = 3 |
| 0.80 | vNomCurso = "Excel Avanzado" |
| 0.81 | vPrecio = 7000 |
| 0.82 | Case Is = 4 |
| 0.83 | vNomCurso = "Diseño Gráfico" |
| 0.84 | vPrecio = 6500 |
| 0.85 | End Select |
| 0.86 | |
| 0.87 | 'Calculo del descuento |
| 0.88 | |
| 0.89 | If vForPag = 1 Then |
| 0.90 | vPreCal = vPrecio * 0.9 |
| 0.91 | vForPagNom = "Contado" |
| 0.92 | Else |
| 0.93 | vPreCal = vPrecio |
| 0.94 | vForPagNom = "Tarjeta de credito" |
| 0.95 | End If |
| 0.96 | |
| 0.97 | |
| 0.98 | 'Volcado |
| 0.99 | vFil = Range("a10000").End(xlUp).Row + 1 |
| 1.00 | Range("a" & vFil).Value = vNomApe |
| 1.01 | Range("b" & vFil).Value = vNomCurso |
| 1.02 | Range("c" & vFil).Value = vForPagNom |
| 1.03 | Range("d" & vFil).Value = vCanCuo |
| 1.04 | Range("e" & vFil).Value = vPrecio |
| 1.05 | Range("e" & vFil).NumberFormat = "_($* #,##0_);_($* (#,##0);_($* ""-""_);_(@_)" |
| 1.06 | Range("f" & vFil).Value = vPrecio - vPreCal |
| 1.07 | Range("f" & vFil).NumberFormat = "_($* #,##0_);_($* (#,##0);_($* ""-""_);_(@_)" |
| 1.08 | Range("g" & vFil).Value = vPreCal |
| 1.09 | Range("g" & vFil).NumberFormat = "_($* #,##0_);_($* (#,##0);_($* ""-""_);_(@_)" |
| 1.10 | Range("h" & vFil).Value = vPrecio / vCanCuo |
| 1.11 | Range("h" & vFil).NumberFormat = "_($* #,##0_);_($* (#,##0);_($* ""-""_);_(@_)" |
| 1.12 | Columns("a:h").EntireColumn.AutoFit |
| 1.13 | |
| 1.14 | Do |
| 1.15 | vCon =
InputBox("¿Desea agregar un nuevo registro?" & Chr(13) & "1. Ingresar un nuevo registro" & Chr(13) & "2. Dejar de ingresar nuevos registro", "INGRESAR NUEVO REGISTRO") |
| 1.16 | Loop Until (vCon = 1) Or (vCon = 2) |
| 1.17 | |
| 1.18 | |
| 1.19 | Loop Until vCon = 2 |
| 1.20 | |
| 1.21 | |
| 1.22 | 'Queda la opcion de hacerlo con MsgBox |
| 1.23 | 'vCon = MsgBox("¿desea agregar un nuevo registro?", vbYesNo) |
| 1.24 | 'Loop Until Continuar = vbNo |
| 1.25 | |
| 1.26 | End Sub |
Ver diagrama de flujo en la siguiente página, Ilustración 1.
Ilustración 1
Evaluación del desempeño
No se ha evaluado.
Mejora
Versión original.

No hay comentarios:
Publicar un comentario