Está en la página 1de 26

UNIVERSIDAD PERUANA DE CIENCIAS APLICADAS

FACULTAD DE INGENIERÍA UNIVERSIDAD PERUANA DE CIENCIAS APLICADAS

FACULTAD DE INGENIERÍA

Carrera:

Ingeniería Industrial

Curso:

Algoritmos

Profesora:

Marcela Escobar

Sección:

IV45

Estudiantes:

N APELLIDOS Y NOMBRES CÓDIGO

01 Morgrovejo Vasquez, Alexandra U2017155656

02 Pozada Carbajal, Andres Enrique Martin U201923917

03 Garcia Chumpate, Betsaida Sayuri U201811051

04 Bermejo Chavera, Luciana U201914994

05 Valencia Torpoco, Arlette Ivette U201910340

1
CICLO 2021 – 02

INDICE

1 Tabla de contenido
1. INTRODUCCIÓN............................................................................................................................................................3
1.1. ANÁLISIS DEL ENTORNO:..................................................................................................................................................... 3
1.2. FODA.............................................................................................................................................................................................. 4
1.3. CONDICIÓN:.................................................................................................................................................................................. 4
1.4. VARIABLES PARA CONSIDERAR:...........................................................................................................................................5
2. MARCO TEÓRICO:.......................................................................................................................................................5
3. ANÁLISIS Y DEFINICIÓN DE LA PROBLEMÁTICA:.....................................................................................6
3.1. PLANTEAMIENTO DEL PROBLEMA:.....................................................................................................................................6
4. PLANTEAMIENTO A LA SOLUCIÓN....................................................................................................................7
4.1. OBJETIVOS.................................................................................................................................................................................... 7
4.1.1. Objetivo general................................................................................................................................................................... 7
4.1.2. Objetivos específicos........................................................................................................................................................... 7
4.2. MODELO DE SOLUCIÓN LÓGICA...........................................................................................................................................7
4.3 MODELAMIENTO DE SOLUCIÓN MATEMÁTICA........................................................................................................................8
5. DISEÑO DE ALGORITMO..........................................................................................................................................9
5.1. ANÁLISIS DE DATOS................................................................................................................................................................... 9
5.2. DISEÑO DE PROCEDIMIENTOS Y/O FUNCIONES...............................................................................................................9
5.3. DISEÑO DE LA INTERFAZ GRÁFICA......................................................................................................................................1
6. IMPLEMENTACIÓN.....................................................................................................................................................1
7. CONCLUSIONES Y RECOMENDACIONES......................................................................................................14
8. BIBLIOGRAFÍA...........................................................................................................................................................15
9. APÉNDICES Y/O ANEXOS.......................................................................................................................................16
1. Introducción

1.1. Análisis del entorno:

Actualmente, son numerosas las compañías que recurren a modelos de innovación tecnológica
debido al panorama mundial generado por la recesión económica y el creciente aumento de
competidores en los diversos sectores del mercado. Dentro de los casos más resaltantes de
innovación, encontramos aquella realizada por la empresa Amazon, la cual incrementó su
productividad en los almacenes al hacer uso de un sistema de seguimiento automatizado, el cual
identificaba la posición de los productos agilizando el proceso de recepción. Del mismo modo, la
empresa mejoró su sistema de ventas, mediante el uso de un seguimiento automático de compras,
el cual tal y como los robots usados en los almacenes, hacía uso de un sistema de programación,
el cual se conformaba mediante algoritmos.

Por otra parte, es muy bien conocido que, debido a la pandemia, los sistemas de automatización
en la atención de clientes deben formar parte fundamental del desarrollo de las empresas en la
actualidad. Proceso que, como hemos mencionado anteriormente con el caso de la empresa
Amazon, es de vital importancia si se busca la prevalencia de los negocios. Por ello, dado el
entorno competitivo del que forman parte los diversos negocios de nuestro país, tanto públicos
como privados, es que se busca que estos cuenten con la capacidad de sobrellevar y sobresalir en
un entorno competitivo como es el actual. Así mismo, se busca prevalecer las medidas de
bioseguridad, por lo que un sistema que agilice y mejore el proceso de atención al cliente de
forma presencial o virtual es de una gran prioridad para las empresas a nivel nacional.

Por ello, es que nuestro presente trabajo de investigación tendrá como objetivo el de desarrollar e
implementar un algoritmo funcional que nos permita mejorar e incrementar la productividad en
el área de atención al cliente y ventas de la empresa Boticas Felicidad, Chiclayo. Así mismo,
buscamos desarrollar un modelo de programación haciendo uso de la herramienta Visual Basic,
el cual, mediante conocimientos adquiridos en clase, nos permita generar un sistema eficiente,
automático y que exenta de cualquier error tanto escrito como tipográfico con el que pueda
contar el operario en el uso del aplicativo. Finalmente, buscamos obtener feedbacks que nos
permitan mejorar y finalizar con pruebas que determinen la eficiencia tanto de nuestro algoritmo,
como de su aplicación directa en la atención y venta a los clientes.

1.2. FODA

FORTALEZAS OPORTUNIDADES
● Fácil implementación de un sistema ● Reducción del tamaño de cola
de automatización en caja. ● Periodos de atención más rápidos.
● Mejora en los tiempos de atención. ● Asesores de compra más eficientes
● Reducción de fallas en el ingreso de debido a la automatización de la
datos atención y la reducción de fallas.

DEBILIDADES AMENAZAS
● Los sistemas pueden resultar un ● Entorno competitivo altamente
poco complicados de entender en apalancado de nuevos sistemas de
una primera instancia. gestión automatizada para mejorar
● Capacidades de gestión de la la atención en la caja.
información deben ser consultadas ● Sistemas con alta competencia y
con especialistas encargados eficiencia en el mercado que
● Costumbres arraigadas de sistemas pueden distinguirse del nuestro.
antiguos pueden dificultar la curva ● Capacidad de entender el
de aprendizaje. funcionamiento del proceso de
atención en caja como un
problema a futuro.

1.3. Condición:

Para la elaboración de nuestro algoritmo, se analizó la información necesaria de acuerdo con la


empresa “Boticas Felicidad”. Así de esta forma, podemos generar un sistema de automatización
y mejora en la atención al cliente de la empresa Boticas Felicidad. Todos los datos, los cuales
manejaremos, serán datos reales y productos existentes en dicha farmacia. Estos datos tendrán
hasta el límite de 0 o según nuestro cliente decida terminar el pedido. Se almacenará la toma del
pedido y luego se efectuará la entrega.

1.4. Variables para considerar:

Sin embargo, para poder implementarla y acoplarse al sistema de atención que se da en la


farmacia, debemos revisar a fondo su modelo de ventas, así mismo, se complementará dicha
investigación con conceptos que puedan ser recopilados de libros académicos de VBA, tales
como el libro VBA de Excel: La Guía Definitiva David A. Williams. Así mismo, revisaremos los
ejercicios y problemas desarrollados en clase, a fin de afianzar nuestros conocimientos e
incrementar nuestra perspectiva con respecto a la solución del problema. Finalmente,
evaluaremos las oportunidades y desarrollaremos tanto el modelo como el algoritmo de forma
complementaria.

2. Marco Teórico:

Dado que nuestro trabajo de investigación tiene como primicia el desarrollo de un sistema de
atención al cliente mediante el uso de la plataforma VBA en Excel. Por ello, es que se revisarán
diversos conceptos en la guía mencionada anteriormente, usando tanto nuevos conocimientos,
tales como la conformación de repeticiones para la evaluación de errores, así como el ingreso de
datos mediante comandos programados en la plataforma. Del mismo modo, utilizaremos
conceptos aprendidos respecto de los modelos relacionados con la eficiencia en la atención al
cliente. Dentro de los conceptos aprendidos, tenemos los brindados por el artículo de la revista
digital Comercio y Justicia denominado “Modelo de atención al cliente, claves para mejorar la
rentabilidad”, mediante el cual adquirimos los principios básicos que conforman un sistema
eficiente con puntos que nos permiten mejorar tanto la experiencia del cliente, así como asegurar
la rentabilidad de la empresa al reducir costos e incrementar las ventas. Finalmente, usaremos los
conocimientos adquiridos en clase, puesto que los consideramos como parte importante de
nuestra formación en el curso.
3. Análisis y definición de la problemática:

3.1. Planteamiento del Problema:

La empresa Boticas Felcidad es considerada como uno de los principales exponentes


relacionados a la preservación de la salud y el bienestar de sus clientes, asegurando precios bajos
y calidades superiores. Sin embargo, considerando el panorama tanto nacional, como
internacional, es que se encuentra interesada en la solución y mejora de su proceso de atención al
cliente. Puesto que la empresa considera que dada la coyuntura social como es la pandemia por
SARS-COV-2, el proceso de atención debe ser rápido y eficiente, es que se encuentra en la
búsqueda de un modelo mediante el uso de macros en VBA que le permita mantener la
información de sus clientes en bases de datos, los cuales puedan ser usados posteriormente tanto
en campañas de fidelización de clientes, como en la implementación de nuevas ofertas que
aseguren una mayor cantidad de ventas en determinados intervalos de tiempo.
Por otra parte, la empresa considera como parte primordial de la solución e innovación del
sistema de atención al cliente, la reducción en la cantidad de problemas con los que cuentan en el
ingreso y almacenamiento de datos en la empresa. Dicho problema se presenta constantemente,
generando en muchos casos pérdidas de números de contacto, pérdidas o confusiones en los
pedidos, errores en la contabilidad de la empresa, entre otros. Es por ello, que la empresa busca
darles una solución práctica que consolide una mejora óptima en los aspectos antes mencionados
de la empresa.
4. Planteamiento a la solución

4.1. Objetivos

4.1.1. Objetivo general

● Desarrollar un algoritmo eficiente que nos permita generar un sistema de


automatización y mejora en la atención al cliente de la empresa Boticas Felicidad.

4.1.2. Objetivos específicos

● Reducir la cantidad de errores generados en las bases de datos.


● Obtener un modelo de automatización que sea de fácil entendimiento para los
operadores.
● Incrementar la eficiencia de la atención al cliente
● Mejorar la comodidad del operador en la atención al cliente.
● Verificar doblemente la información ingresada por el operador.
● Generar un sistema de Boletas que permiten contabilizar y mostrar los productos
ofrecidos al cliente

4.2. Modelo de solución lógica

Como modelo de solución lógica encontramos la implementación de un sistema de


verificación que nos permita evaluar doblemente la información ingresada por el
consumidor a fin de validar la información ingresada al sistema. Del mismo modo,
buscamos obtener los valores de venta mediante el uso de fórmulas simples, tales como
cálculo del valor de venta, el costo de los productos, unidades vendidas, nombre de los
productos. Por otra parte, buscamos establecer un sistema de libre ingreso de productos, el
cual permita incrementar el catálogo de ventas manteniendo futuras posibles fusiones con
diversos proveedores o mercados que brinden permanencia al mercado de Boticas Felicidad.
Igualmente, buscamos almacenar la información generada por las ventas tanto en las boletas,
como en bases de datos generadas con el fin de ser trasladadas al departamento de finanzas a
fin de evaluar la situación de la empresa.
Así mismo, se busca utilizar fórmulas tales como el cálculo del valor de venta antes y
después de impuestos, con el fin de entregar valores de venta haciendo uso del IGV.
Finalmente, la empresa busca generar un sistema que permita almacenar las ventas
realizadas por un empleado, todo ello mediante el uso de acumuladores o contadores.

4.3 Modelamiento de solución matemática


Como modelo de solución matemática, haremos uso de fórmulas financieras simples, tales
como el cálculo de la utilidad bruta para la evaluación de pérdidas por cliente. Del mismo
modo, haremos uso de contadores implícitos y explícitos para determinar la cantidad de
clientes atendidos por un operador, así como los productos ofrecidos a los clientes y las
cantidades analizadas en una base para acumular las cantidades entregadas. Por otra parte,
haremos uso de fórmulas tales como costos totales, valores de venta totales, valor de venta
después de impuestos y promedio de ventas generadas por cliente.
PT =PVU ∗Q

CT =CTU∗Q

UB=PT −CT

VVT =VV ∗IGV

CONTADOR=CONTADOR+1

VVTC=VVCT +VVT

PROMEDIO=VVTC /CONTADOR

Dichas fórmulas serán implementadas tanto en el algoritmo, como en el modelo de


solución. Sin embargo, las fórmulas pueden incrementarse con el fin de obtener una
mayor eficiencia en el proceso de atención al cliente.
5. Diseño de Algoritmo

Mediante la presente sección, expondremos los diversos componentes que nos permitirán
desarrollar de una forma más completa, nuestro algoritmo a fines de obtener un mejor desarrollo
a fines de obtener una solución a la problemática de la empresa.

5.1. Análisis de datos

Nombre Tipo Clasificación Tipografía Restricción


Operador Entrada Texto Textual < > “”
Nombre Entrada Texto Textual < > “”
Apellido Entrada Texto Textual < > “”
Número Entrada Numérico Entero >0
DNI Entrada Numérico Entero >0
Correo Entrada Texto Textual < > “”
C Intermedia Numérico Entero >0
Producto Entrada Texto Textual < > “”
Cantidad Entrada Numérico Entero >0
Precio Entrada Numérico Real >0
Monto Intermedia Numérico Real >0
Impuesto Intermedia Numérico Real >0
Monto Final Salida Numérico Real >0
Monto Total Salida Numérico Real >0
Rpta Intermedia Booleano 1o0 “Sí” o “No”

5.2. Diseño de procedimientos y/o funciones


5.3. Diseño de la interfaz gráfica

1
6. Implementación

Private Sub CommandButton1_Click()


Dim Operario As String
rpta = MsgBox("Este proceso será realizado por un nuevo operador?", vbYesNo)
If rpta = vbYes Then
Cells(1, 2) = Empty
Cells(3, 2) = Empty
Cells(4, 2) = Empty
Cells(18, 5) = Empty
[D4:P4] = Empty
[F13:F16] = Empty
[E20:J28] = Empty
[J13:J16] = Empty
[J29:J32] = Empty
[E18:F18] = Empty
Do
Do
Operario = InputBox("Ingrese el nombre del operario designado por la empresa")
If Operario = "" Then
MsgBox ("Reingrese el nombre del operario")
End If
Loop Until Operario <> ""
rpta = MsgBox("El nombre del operario es " & Operario & "?", vbYesNo)
Loop Until rpta = vbYes
Cells(1, 2) = Operario
Cells(18, 5) = Operario
c = Cells(2, 2)
Cells(3, 2) = Date
Cells(4, 2) = Time

1
rpta = MsgBox(¿” El cliente realmente desea ordenar un producto?”, vbYesNo)
If rpta = vbYes Then
c=c+1
Cells(2, 2) = c
Cells(15, 10) = Time
Cells(16, 10) = Date
Cells(3 + c, 21) = c
Cells(3 + c, 35) = Time
Do
Do
nombre = InputBox("ingrese el nombre del cliente")
If nombre = "" Then
rpta = MsgBox("Ingrese el nombre, por favor")
End If
Loop Until nombre <> ""
rpta = MsgBox("El nombre del cliente es " & nombre & ", correcto?", vbYesNo)
Loop Until rpta = vbYes
Cells(4, 4) = nombre
Cells(13, 6) = nombre
Cells(3 + c, 22) = nombre
Do
Do
apellido = InputBox("ingrese el apellido del cliente")
If apellido = "" Then
rpta = MsgBox("Ingrese el apellido, por favor")
End If
Loop Until apellido <> ""
rpta = MsgBox("El apellido del cliente es " & apellido & ", correcto?", vbYesNo)
Loop Until rpta = vbYes
Cells(4, 5) = apellido
Cells(14, 6) = apellido
Cells(3 + c, 23) = nombre
Do
Do
DNI = Val(InputBox("ingrese el DNI del cliente"))
If DNI <= 0 Then
rpta = MsgBox("Ingrese el DNI, por favor")
End If
Loop Until DNI > 0
rpta = MsgBox("El DNI del cliente es " & DNI & ", correcto?", vbYesNo)
Loop Until rpta = vbYes
Cells(4, 6) = DNI
Cells(15, 6) = DNI
Cells(3 + c, 24) = DNI
Do
Do
telefono = Val(InputBox("Ingrese el telefono del cliente"))
If telefono <= 0 Then
rpta = MsgBox("Ingrese el telefono, por favor")
End If
Loop Until telefono > 0
rpta = MsgBox("El telefono del cliente es " & telefono & ", correcto?", vbYesNo)
Loop Until rpta = vbYes
Cells(4, 7) = telefono
Cells(14, 10) = telefono
Cells(3 + c, 25) = telefono
Do
Do
direccion = InputBox("Ingrese la dirección del cliente")
If direccion = "" Then
rpta = MsgBox("Ingrese la direccion, por favor")
End If
Loop Until direccion <> ""
rpta = MsgBox("La direccion del cliente es " & direccion & ", correcto?", vbYesNo)
Loop Until rpta = vbYes
Cells(4, 8) = direccion
Cells(16, 6) = direccion
Cells(3 + c, 26) = direccion
Do
Do
correo = InputBox("Ingrese la dirección de correo electrónico del cliente")
If correo = "" Then
rpta = MsgBox("Ingrese el correo electrónico, por favor")
End If
Loop Until correo <> ""
rpta = MsgBox("La direccion electrónica del cliente es " & correo & ", correcto?",
vbYesNo)
Loop Until rpta = vbYes
Cells(4, 10) = correo
Cells(13, 10) = correo
Cells(3 + c, 27) = correo
i=0
Cells(3 + c, 29) = Date
Cells(3 + c, 30) = Time
Cells(4, 11) = Date
Cells(4, 12) = Time
Do
i=i+1
Cells(19 + i, 5) = i
Do
Do
producto = InputBox("Ingrese el nombre del producto")
Loop Until producto <> ""
rpta = MsgBox("El nombre del producto es " & producto & ", es correcto?", vbYesNo)
Loop Until rpta = vbYes
Cells(19 + i, 6) = producto
Do
Do
cantidad = Val(InputBox("Ingrese la cantidad a solicitar del producto"))
Loop Until cantidad > 0
rpta = MsgBox("La cantidad solicitada del producto es " & cantidad & ", es correcto?",
vbYesNo)
Loop Until rpta = vbYes
Cells(19 + i, 7) = cantidad
Do
Do
precio = Val(InputBox("Ingrese el precio del producto"))
Loop Until precio > 0
rpta = MsgBox("El precio del producto solicitado es " & precio & ", es correcto?",
vbYesNo)
Loop Until rpta = vbYes
Cells(19 + i, 8) = precio
Do
Do
ID = InputBox("Ingrese el ID del producto")
Loop Until ID <> ""
rpta = MsgBox("El ID del producto es " & ID & ", es correcto?", vbYesNo)
Loop Until rpta = vbYes
Cells(19 + i, 9) = ID
cantidadtotal = cantidadtotal + cantidad
Cells(4, 13) = cantidadtotal
Monto = cantidad * precio
If Monto <= 50 Then
nuevomonto = Monto
ElseIf Monto > 50 And Monto <= 100 Then
nuevomonto = Monto * 0.9
ElseIf Monto > 100 And Monto <= 200 Then
nuevomonto = Monto * 0.85
Else
nuevomonto = Monto * 0.8
End If
Cells(19 + i, 10) = nuevomonto
montototal = montototal + nuevomonto
MontoSD = MontoSD + Monto
rpta = MsgBox("El cliente desea ordenar más productos?", vbYesNo)
Loop Until rpta = vbNo Or i = 9
Do
Do
FP = InputBox("Ingrese la forma de pago, recuerde que debe ser Efectivo o Tarjeta")
Loop Until FP <> ""
Loop Until FP = "Efectivo" Or FP = "Tarjeta"
descuento = MontoSD - montototal
Cells(4, 13) = cantidadtotal
Cells(31, 10) = i
Cells(3 + c, 31) = cantidadtotal
Cells(4, 14) = montototal
Cells(3 + c, 32) = montototal
Cells(4, 15) = FP
Cells(3 + c, 33) = FP
Cells(4, 16) = descuento
Cells(32, 10) = descuento
Cells(3 + c, 34) = descuento
Cells(29, 10) = montototal
Cells(30, 10) = Time
Cells(3 + c, 36) = Time
Else
If c = 0 Then
c=0
Cells(2, 2) = c
Else
nc = c
Cells(2, 2) = nc
End If
Cells(3, 2) = Empty
Cells(4, 2) = Empty
[D4:P4] = Empty
End If
Else
Cells(3, 2) = Empty
Cells(4, 2) = Empty
[D4:P4] = Empty
[F13:F16] = Empty
[E20:J28] = Empty
[J13:J16] = Empty
[J29:J32] = Empty
[E18:F18] = Empty
Cells(18, 5) = Empty
c = Cells(2, 2)
Cells(3, 2) = Date
Cells(4, 2) = Time
Operario = Cells(1, 2)
Cells(18, 5) = Operario
rpta = MsgBox(¿”El cliente realmente desea ordenar un producto?”, vbYesNo)
If rpta = vbYes Then
c=c+1
Cells(2, 2) = c
Cells(15, 10) = Time
Cells(16, 10) = Date
Cells(3 + c, 21) = c
Cells(3 + c, 35) = Time
Do
Do
nombre = InputBox("ingrese el nombre del cliente")
If nombre = "" Then
rpta = MsgBox("Ingrese el nombre, por favor")
End If
Loop Until nombre <> ""
rpta = MsgBox("El nombre del cliente es " & nombre & ", correcto?", vbYesNo)
Loop Until rpta = vbYes
Cells(4, 4) = nombre
Cells(13, 6) = nombre
Cells(3 + c, 22) = nombre
Do
Do
apellido = InputBox("ingrese el apellido del cliente")
If apellido = "" Then
rpta = MsgBox("Ingrese el apellido, por favor")
End If
Loop Until apellido <> ""
rpta = MsgBox("El apellido del cliente es " & apellido & ", correcto?", vbYesNo)
Loop Until rpta = vbYes
Cells(4, 5) = apellido
Cells(14, 6) = apellido
Cells(3 + c, 23) = nombre
Do
Do
DNI = Val(InputBox("ingrese el DNI del cliente"))
If DNI <= 0 Then
rpta = MsgBox("Ingrese el DNI, por favor")
End If
Loop Until DNI > 0
rpta = MsgBox("El DNI del cliente es " & DNI & ", correcto?", vbYesNo)
Loop Until rpta = vbYes
Cells(4, 6) = DNI
Cells(15, 6) = DNI
Cells(3 + c, 24) = DNI
Do
Do
telefono = Val(InputBox("Ingrese el telefono del cliente"))
If telefono <= 0 Then
rpta = MsgBox("Ingrese el telefono, por favor")
End If
Loop Until telefono > 0
rpta = MsgBox("El telefono del cliente es " & telefono & ", correcto?", vbYesNo)
Loop Until rpta = vbYes
Cells(4, 7) = telefono
Cells(14, 10) = telefono
Cells(3 + c, 25) = telefono
Do
Do
direccion = InputBox("Ingrese la dirección del cliente")
If direccion = "" Then
rpta = MsgBox("Ingrese la direccion, por favor")
End If
Loop Until direccion <> ""
rpta = MsgBox("La direccion del cliente es " & direccion & ", correcto?", vbYesNo)
Loop Until rpta = vbYes
Cells(4, 8) = direccion
Cells(16, 6) = direccion
Cells(3 + c, 26) = direccion
Do
Do
correo = InputBox("Ingrese la dirección de correo electrónico del cliente")
If correo = "" Then
rpta = MsgBox("Ingrese el correo electrónico, por favor")
End If
Loop Until correo <> ""
rpta = MsgBox("La direccion electrónica del cliente es " & correo & ", correcto?",
vbYesNo)
Loop Until rpta = vbYes
Cells(4, 10) = correo
Cells(13, 10) = correo
Cells(3 + c, 27) = correo
i=0
Cells(3 + c, 29) = Date
Cells(3 + c, 30) = Time
Cells(4, 11) = Date
Cells(4, 12) = Time
Do
i=i+1
Cells(19 + i, 5) = i
Do
Do
producto = InputBox("Ingrese el nombre del producto")
Loop Until producto <> ""
rpta = MsgBox("El nombre del producto es " & producto & ", es correcto?", vbYesNo)
Loop Until rpta = vbYes
Cells(19 + i, 6) = producto
Do
Do
cantidad = Val(InputBox("Ingrese la cantidad a solicitar del producto"))
Loop Until cantidad > 0
rpta = MsgBox("La cantidad solicitada del producto es " & cantidad & ", es correcto?",
vbYesNo)
Loop Until rpta = vbYes
Cells(19 + i, 7) = cantidad
Do
Do
precio = Val(InputBox("Ingrese el precio del producto"))
Loop Until precio > 0
rpta = MsgBox("El precio del producto solicitado es " & precio & ", es correcto?",
vbYesNo)
Loop Until rpta = vbYes
Cells(19 + i, 8) = precio
Do
Do
ID = InputBox("Ingrese el ID del producto")
Loop Until ID <> ""
rpta = MsgBox("El ID del producto es " & ID & ", es correcto?", vbYesNo)
Loop Until rpta = vbYes
Cells(19 + i, 9) = ID
cantidadtotal = cantidadtotal + cantidad
Cells(4, 13) = cantidadtotal
Monto = cantidad * precio
If Monto <= 50 Then
nuevomonto = Monto
ElseIf Monto > 50 And Monto <= 100 Then
nuevomonto = Monto * 0.9
ElseIf Monto > 100 And Monto <= 200 Then
nuevomonto = Monto * 0.85
Else
nuevomonto = Monto * 0.8
End If
Cells(19 + i, 10) = nuevomonto
montototal = montototal + nuevomonto
MontoSD = MontoSD + Monto
rpta = MsgBox("El cliente desea ordenar más productos?", vbYesNo)
Loop Until rpta = vbNo Or i = 9
Do
Do
FP = InputBox("Ingrese la forma de pago, recuerde que debe ser Efectivo o Tarjeta")
Loop Until FP <> ""
Loop Until FP = "Efectivo" Or FP = "Tarjeta"
descuento = MontoSD - montototal
Cells(4, 13) = cantidadtotal
Cells(31, 10) = i
Cells(3 + c, 31) = cantidadtotal
Cells(4, 14) = montototal
Cells(3 + c, 32) = montototal
Cells(4, 15) = FP
Cells(3 + c, 33) = FP
Cells(4, 16) = descuento
Cells(32, 10) = descuento
Cells(3 + c, 34) = descuento
Cells(29, 10) = montototal
Cells(30, 10) = Time
Cells(3 + c, 36) = Time
Else
If c = 0 Then
c=0
Cells(2, 2) = c
Else
nc = c
Cells(2, 2) = nc
End If
Cells(3, 2) = Empty
Cells(4, 2) = Empty
[D4:P4] = Empty
End If
End If
End Sub
7. Conclusiones y Recomendaciones

 Como primera conclusión, encontramos que, mediante la implementación del presente


algoritmo, se redujo considerablemente la cantidad de tiempo que se invertía en la recepción
de pedidos a los clientes.
 Como segunda conclusión, obtenemos que el presente algoritmo redujo de manera concisa la
cantidad de fallas involucradas en el ingreso de datos de los clientes, mediante la validación
constante de estos antes de proceder al ingreso en las boletas.
 Como tercera conclusión, contamos que el algoritmo presentado nos permitió obtener un
registro detallado sobre las compras realizadas por los consumidores, así como de las
cantidades solicitadas y el monto total.
 Como primera recomendación, contamos con que la implementación del nuevo algoritmo en
los negocios debe de ser acompañado por un sistema de medición de satisfacción, tanto del
cliente, como del cliente.
 Como segunda recomendación, contamos con que el nuevo algoritmo debe contar con una
capacitación en todos los operarios encargados del proceso de ventas. De esta manera la
empresa obtendrá un mejor desempeño en todas las actividades y mejorará la eficiencia del
proceso de ventas.
8. Bibliografía

Walkenbach, J. (2013). Excel 2010 Power Programming with VBA. Recuperado de:
https://books.google.es/books?
hl=es&lr=&id=aVzLt6b2HogC&oi=fnd&pg=PA1&dq=VBA&ots=FdSgzcEROE&sig=jj
xfCenISshCFOJiDTHiHm6ccOo#v=onepage&q=VBA&f=false
Marinoni, O. (2004). Implementation of the analytical hierarchy process with VBA in ArcGIS.
Recuperado de: https://www.sciencedirect.com/science/article/pii/S0098300404000652
Tsung, K. (2007). Programming ArcObjects with VBA. Recuperado de:
https://www.taylorfrancis.com/books/mono/10.1201/9781420009187/programming-
arcobjects-vba-kang-tsung-chang
Staunton, M. (2012). Advanced Modelling in Finance using Excel and VBA. Recuperado de:
https://books.google.es/books?
hl=es&lr=&id=l0aAtPTVtJEC&oi=fnd&pg=PR3&dq=VBA&ots=zDJZjgOCoa&sig=EQ
c2E5Bu2dyg0UdbqpTvDrXA0f8#v=onepage&q=VBA&f=false
9. Apéndices y/o Anexos

También podría gustarte