UniversoExcelForo

Respuesta a consultas.
Fecha de creación: 09.Abril.2012

Fundadores: Wibly,Tyno,Servando,Sakkar,Rosendo2,RMaximo,Railar,Mcoronel,Ioyama,Igtelo,Hugotron,Drochar,Dedos,Alberto,Adolfo

No se pueden hacer consultas de Excel o VBA por mensaje privado.
Utiliza el botón buscar del foro y te ahorras tiempo para obtener "ayuda".

No estás conectado. Conéctate o registrate

Ver el tema anterior Ver el tema siguiente Ir abajo  Mensaje [Página 1 de 1.]

pepehillo


Os presento un reto:

¿Cómo puedo decirle a excell que necesito tantas copias de facturas simplificadas como filas rellenas de la hoja 2?
¿Cómo puedo decirle a excell que traslade en las columnas y filas los datos siguientes?
1º.- El número de tiket que figura en la HOJA 2 ponerlo en el número de factura de HOJA 1.
2º.- Que se traslade las fechas de la columnas B de la hoja 2 a la columna A-D- etc…
3º.- Que desglose el PVP de la columna D de la HOJA 2 con un IVA de un 10%
4º.- Que traslade la hora de la HOJA 2 a hora de la factura simplificada HOJA 1
El resultado debe ser que el número de facturas simplificadas (HOJA 1), sea igual a el número de filas rellenas de la fila A HOJA 2
Archivos
tiket.zip
como hacer tantos tikets según el número de filas rellenas trasladando datos de una hoja que tiene resultados a otra que cumplimenta los tikets
No tienes los permisos para descargar los archivos.
(193 KB)

pepehillo


Por favor, ¿me pueden ayudar?

tyno


Hola pepe.
A ver si entendi, ¿lo que necesitas es que se replique (tomando el archivo que has subido) 820 veces ese formato de ticket que tienes en al Hoja 2 tomando para cada ticket los datos de cada registro de la Hoja1?
¿algo mas que se deba tener en cuenta?

Saludos

pepehillo


Hola tyno.
Sí, es eso, igual que fuera 820 veces podrían ser tantas veces como aparezcan datos en la hoja 1.

tyno


Ya estoy desarrollando tu planilla. 
Con respecto a la misma tengo estas consultas:
1 En la Hoja de los registros en la columna Nº de ticket estan las cantidades 1,4,5 etc.¿Esto que implicaria? que el primer registro tiene un solo ticket o sea el nº 1, el segundo serian nº2, nº3, nº4, el tercer registro serian el nº5 al nº6, etc ¿o como se distrubuyen?
2 ¿como seria el nº de factura que se asigna a cada ticket?
3 ¿el total por cada factura como se obtiene?¿lo mismo la base imponible y tipo IVA?

Saludos

pepehillo


Hola Tyno.
Gracias por ser tan cercano a mis preguntas. Este ejercicio, es el desarrollo de otro ejercicio que tú mismo hiciste de forma muy acertada y eficiente a otro miembro del foro llamado TIJERITAS, el día 16/10/13. Está colgado en el foro. Puedes ver el archivo que tú mismo fabricaste en base a la consulta de Tijeritas. El archivo se llama tiket.zip. Realmente, es ese archivo el que me gustaría que se perfeccionara, haciendo uso del botón para ejecutar los resultados que brillantemente diste en el clavo.
Yo consulté ese archivo, y lo descargué, pero el desarrollo del mismo es el que realmente me interesa, puesto que se calcula con un botón el resultado del monto generado y monto estipulado.
Lo interesante de ello es lo siguiente:
En base a ese archivo, que se calcule lo que yo te he indicado en los otros mensajes.
En respuesta a tu pregunta del anterior mensaje te respondo:
1º.- El número de tiket, es consecutivo, 1-2-3-4-.... siempre sumando uno más, pero no es aleatorio. Es por orden de tiket, por lo que no se debe calcular de forma aleatoria, el primer número, ha de ser el 1, el segundo el 2, el tercero el 3. En el archivo de Tiket.zip, se tendría que quitar ese cálculo aleatorio.
2º.- Esos números, irían al número de factura de la hoja 1, celda c8, celda f8, etc....
3º.- El total de cada factura, se obtiene así:
Casilla D3 de la hoja 2=total de casilla C18, ..., casilla D4 de la hoja 2= total de casilla F18.,......
Cuando esté ese resultado en esas casillas, se tiene que calcular automáticamente la casilla C15 y C16 de la hoja 1 así como F15 y F16 de la hoja 1, así sucesivamente .
Es la base imponible de hallar el 10% del total. Es decir, el total de cada factura es el resultado del 10% de la base imponible más la base imponible.
 
Saludos

tyno


Hola Pepe.

Paso el archivo que mencionas que hice en su momento a Tijeritas con el agregado de insertar tickets en la Hoja "tickets" y sus respectivos datos, salvo lo del IVA y la base imponible ya que no sabria como calcularlo partiendo una cifra que es el total, lo que corresponde es que el calculo sea inverso, es decir, con un monto mas el iva obtener el total, a menos que se te ocurra alguna forma de obtener ese dato y me la explicas, vengo algo oxidado con los calculos.

Por otro lado lo que se menciona sobre el archivo de Tijeritas como aleatorio, es la asignacion del valor PVP el cual oscila entre 26-27-28(no se si esto debe quedar asi o hay que modificar) , el nº de ticket o factura es consecutivo y parte del nº que se agrega en la celda F1

Con el boton verde Generar Tickets se crea la lista de la Hoja "registros", despues que se tienen los registros on el boton Insertar Tickets se crean en la Hoja "tickets" los tickets justamente.
 
Se crean 9 tickets por Hoja A4, esto lo hice de acuerdo a mi configuracion de impresion pero quizas en tu caso hay que modificarlo.

Prueba el archivo y luego me dices. Saludos

pepehillo


Eres genial de verdad. Estoy viendo cómo desarrollas las fórmulas en Visual Basic, y alucino. He conseguido poner la base imponible y el % de IVA a la carta, de la forma siguiente: En el diseño base le he puesto:
Celda C15=C18/1,10
Celda C16= C15*10%
Poniendo esto, automáticamente se cumplimentan todos los tickets de forma perfecta, sumando base+iva=total pvp
Lo que habría que ajustar, sería el resultado del PVP en el diseño base, ya que no se traslada exactamente el dato de la columna E, puesto que interpreta decimales cuando no los hay.
Me estoy metiendo en los códigos, y lo que intento comprender cómo se puede cambiar a mi antojo el nº de tickets generados diarios y las cantidades que deseo poner aleatorias, es decir, por ejemplo, si se desean hacer entre 20 y 100 tickets diarios y precios entre 1 y 10 euros (valiendo cantidades de 1,5 de 2 de 2,5 de 3 de 3,5 de 4 de 4,5, etc... hasta 10)
Y cómo decirle que los días hábiles sean los que yo quiera, y no sólo de lunes a viernes, por ejemplo, que los días sean de martes a domingo.

Todo esto es para cambiarlo al antojo metiéndome en las fórmulas que muy acertadamente has conseguido.

Gracias por hacer que esto me guste. Gracias de nuevo amigo.

tyno


Hola Pepe
Bueno, me has aclarado lo anterior pero aun me quedan algunas dudas y se me hace como que el archivo de Tijeritas no es del todo lo que necesitas aunque en apariencia pueda servirte.
Tu  me explicas que el PVP es la suma de la base mas le IVA, o sea el dato que va en la columna D tiene que calcularse así. En el archivo de Tijeritas el PVP se inserta de forma aleatoria entre 26/27 y 28, esto esta establecido en la macro, no hay forma de cambiarlo sino en el código mismo de la macro, lo cual me parece que ya no coincide con lo que quieres. 
Luego el total en la columna D (siempre explicando el archivo de Tijeritas) es el resultado de multiplicar el PVP por el Monto Estipulado en G2 divido por el Monto Generado en H2, este monto generado es un dato volátil, es decir aumenta o disminuye hasta acercarse lo mas posible al monto estipulado y entonces se detiene el calculo, no recuerdo porque Tijeritas quería que el archivo funcione de esta manera, pero veo que esto tampoco se tiene en cuenta en lo que necesitas.
Tu quieres generar la cantidad de ticket que te parezca, eso no es problema, pero en el archivo de Tijeritas el nº de tickets depende del monto estipulado que se establezca y en base a esto se distribuye ese monto en un  periodo de 90 días (me parece), o sea que la cantidad de tickes nunca se sabe cuanto puedan llegar a ser a diferencia de tu caso que quieres fijar una cantidad.
El tema de la hora también se esta asignando de manera aleatoria ¿lo dejamos asi?
Por último distribuir montos que oscilen entre  1 a 10 y seleccionar el primer dia de la semana creo que no seria inconveniente.
Quisiera entonces que veas los puntos que te he mencionado anteriormente y me indiques como quisieras que esta macro genere los registros de tickets. La manera de explicarme es como si se trata de programar, tu indicación deber ser concisa por ejemplo:  Columna B= datos aleatoria, Columna E = Columna C/D, etc. No se si me explico esto para evitar confusiones y ahorrar tiempo
Esto puede ser un poco fastidioso pero dadas las circunstancias hay que tener paciencia e ir paso a paso.
 

Saludos

pepehillo


Gracias de nuevo por escucharme amigo. Perdona por no explicarme bien. El archivo que has realizado es perfecto, y sí me sirve, lo que ocurre es que la casilla E de registros, que se traslada a la casilla azul de tickets, se convierte en decimales cuando no los hay en la casilla E. Han de ser iguales.
Lo que sería fabuloso es que se calculara en vez de 26-27-28 las cantidades aleatorias, que éstas fueran entre  1 y 10  (valiendo cantidades de 1,5 de 2 de 2,5 de 3 de 3,5 de 4 de 4,5, etc... hasta 10), de forma aleatoria, para el cálculo del monto generado, puesto que el monto estipulado haría uso de él siempre, con el fin de conseguir la cantidad más aproximada a las que te he indicado anteriormente.
La cantidad de tickets que interesaría sería perfecto que se generaran con un botón donde te pidiera que fuera estipulado entre una cantidad y otra teniendo en cuenta el monto estipulado por ejemplo entre 30 y 120 tickets diarios), cada día.
El tema de la hora, también está bien, pero si observas, el número de ticket a veces no está seguido de la hora, por ejemplo, fíjate que en el mismo día se producen unos tickets enumerados en orden, pero sin embargo, el horario es anterior al número. (habrían de estar en orden) 
Respecto a los días feriados, quizás lo más conveniente, sería que se le pudiera decir qué días son exactamente, pero además, decir si los lunes, o los martes, o cualquier día de la semana no se trabaja, por ejemplo:
Que te pregunte la pantalla si quieres poner que los lunes sea feriado, o bien un domingo..., dejando a la vez los días feriados (que son los normalmente de fiesta nacional, provincial, local)

Observa, que lo que estás haciendo, en base a lo que te pido, es una perfección para el trabajo de un uso cotidiano. Yo te aporto lo que realmente se necesita para poder simplificar el trabajo, y tú le das color a esa necesidad.
¡todo esto es un gran reto!, y creo que este archivo que realices va a tener tirón en la red, puesto que es un tanto complicado, pero muy útil a efectos de simplificación en el trabajo cotidiano de un establecimiento humilde.

saludos

tyno


Hola Pepe.
Paso el archivo con algunas de las modificaciones que me has indicado.
En este archivo suprimi la parte de insertar los tickets con su diseño asi nos centramos en la parte de generar los tickets. En el mismo archivo agrugue las consultas del caso.

Saludos

pepehillo


1º.- Respecto los días franco y los días feriados lo has clavado. Es perfecto.
2º.- Has podido hacer también que sea aleatoria la cantidad del PVP con cantidades entre 1 y 10, con los 0,5, por lo que también es perfecto.
3º.- El monto estipulado y el monto generado es el principal objetivo, y quizás lo más importante una vez hecho todo lo que hay hasta ahora.
El monto estipulado debe apretar al PVP, para aproximar a lo máximo posible el monto generado de manera que existan un número aleatorio de tickets diarios mínimos, por que el caso sería el siguiente:
Debería de existir un número de tickets diarios aleatorios que no se repitan de la misma manera todos los días, es decir, que cada día tenga un número determinado y al siguiente otro distinto al anterior.
He estado haciendo pruebas y está todo perfecto, a excepción de que en cada día no se debe repetir el mismo número de tickets, un día por ejemplo 20, al día siguiente 13, al día siguiente 52, al día siguiente.... aleatorio hasta 100 por ejemplo. Quizás haciendo un mismo botón que diga cuantos tickets entre un número de 1 hasta 100.... o ciento y pico,.... ¿se puede hacer?
Si se puede hacer, por favor, colócale la parte de insertar tickets... No te quiero marear más, pero si puedes hacerlo te lo agradezco enormemente.
Eres un genio.
Gracias por escucharme desde tan lejos.

tyno


Ahora entiendo lo de agregar cantidades aleatorias de tickets, y creo que puedo resolver el tema de ajustarse al monto estipulado, etc.
 Y el tema de las fechas desde y hasta, como se relacionan con esto? Si se establece una fecha inicial no hay problemas en generar tickets hasta que se llegue al monto estipulado, pero si ponemos un margen de fechas no va a ser posible llegar a dicho monto. Cual es tu idea con respecto a esto? Como es este asunto? 

pepehillo


Hola de nuevo amigo. Respecto a las fechas he estado haciendo pruebas y están ok, puesto que si ajusto el número de tickets que deseo, y pongo las fechas (entre una fecha y otra), sí se consigue acercarse al monto generado, en todo caso, para que se acerque al monto generado, iría cambiando el número de tickets, y de esta manera se consigue.

Uf....

Por último, ¿cabría la posibilidad también de hacer otra hoja donde se resuma en un ticket diario el total de todo lo vendido? Es decir, si el día 01/01/2016 se hicieron 50 tickets, que se encuentran en la hoja de TICKETS, que se refleje en otra HOJA un mismo ticket sumando todo lo que se ha hecho del día 01/01/2016?... y así sucesivamente con los días ..

Con esto y la idea tuya de ajustar los montos, ya estaría todo OK.

A ver cómo queda con todo incluido.. cheers

tyno


Hola Pepe.
Ya lo tengo bastante avanzado al archivo, lo que no me di cuenta fue el tema de los horarios que se aplican: en el archivo original se establecio insertar horas que iban de forma aleatoria desdes las 6:00 a las 20:00 y se omitian los horarios 14:00 y 15:00 ¿esto como debe quedar para tu caso?

Saludos

pepehillo


Gracias por responderme. Realmente, el horario de España, de forma laboral es el siguiente:
Si es en hostelería, es variable, una idea, podría ser ser desde por la mañana hasta la noche, pero lo normal es que fuera desde las ocho de la mañana hasta las diez de la noche en bares normales de barrio, sin descanso, puesto que es para comidas y bebidas.
Si es en un horario de comercio de barrio, puede ser desde las nueve de la mañana hasta las dos de la tarde, se descansa desde las dos de la tarde hasta las cuatro. Luego, se abre desde las cuatro de la tarde hasta las siete de la tarde.

Gracias, muchas gracias.

tyno


Hola Pepe.
Paso el archivo con las ultimas modificaciones.
 
Ahora los tickets se van a generar por medio de un formulario que he creado para poder en principio establecer todos los parámetros necesarios.
 
Si bien hay parámetros que he establecido por defecto, estos se pueden modificar como ser las fechas entre la cuales se deben generar los tickets, los horarios de trabajo y horarios omitidos, cantidad inferior/superior de tickets por día y los montos mínimos/máximos por ticket , estos se crean de forma aleatoria entre los valores establecidos, días francos y feriados.
 
Las fechas se pueden ingresar con cualquier formato separadas por un – o una /.  Puede ser fecha corta d/m; dd/mm o d/m/aa; dd/mm/aa; dd/mm/aaaa.
 
No se si quedó bien el tema de insertar las horas, si bien hice para que se ordenen de manera consecutiva dependiendo del nº de ticket.
 
El monto generado a veces se crea con una diferencia de +/-  según monto mínimo.
 
Lo que hay que tener en cuenta es que dependiendo del monto estipulado que se aplique, la cantidad mínima y máxima de tickets,  el monto mínimo y máximo por tickets entre un rango de fechas el resultado puede no ser el esperado. 
Por ejemplo, si tenemos:
rango de fechas de 5 días 
monto estipulado de €10000 
cantidad tickets x día entre 20/100
monto tickets entre  €1 / €10
En este caso el mejor resultado posible seria  5*100*10=€5000. 
Lo mismo puede ser cuando el monto estipulado resulta muy bajo para los parámetros establecidos
Por ejemplo, si tenemos:
rango de fechas de 30 días 
monto estipulado de €500 
cantidad tickets x día entre 20/100
monto tickets entre  €1 / €10
En este caso el mejor resultado posible seria  30*20*1=€600
 
Como la macro inserta de forma aleatoria una x cantidad de tickets por día (siempre dependiendo de los parámetros que establecidos) suele suceder que la suma de los montos de los registros generados  sobrepase o no alcance por mucho el monto estipulado, por tal motivo la macro comienza a reducir o incrementar los registros y cuando ya no puede modificar la cantidades máximas o mínimas de tickets por día  continua con disminuir los montos hasta intentar llegar al monto estipulado, este proceso de incrementar o reducir ya sea registros o montos, dependiendo de la diferencia que exista entre el monto estipulado y el monto generado, puede demorar mucho tiempo también dependiendo de la velocidad de la PC que se esta utilizando.
 
En la Hoja Control inserte una tabla dinámica que muestra el resumen de los tickets generados con sus respectivas cantidades por dia y montos.
 

Quedaría que pruebes el archivo y me avisas que falta agregar/modificar. Saludos

pepehillo


Hola tyno.
Decirte que eres espectacular.
Observa una apreciación solamente, pues he visto el archivo y solamente le faltan dos cosas:

La columna D de registros, de forma individualizada, se tiene que trasladar a los casilleros azules de la HOJA TICKETS. Es que se está trasladando de las casilla E, en vez de las D. Es decir, el monto generado, es el que se debe trasladar y repartirse en la HOJA TICKETS, (celdas azules).

Y por otra, no consigo trasladar correctamente la suma total diaria de los tickets de un día respecto a la HOJA CONTROL. Me sale el siguiente mensaje:
"el informe de tabla dinámica se guardó sin los datos subyacentes"

Por lo demás está todo perfecto.

tyno


Hola Pepe.
Paso el archivo con la modificacion.
Por el error de la tabla dinamica no se que pueda ser. Probe este archivo en otra PC y no hubo problemas. Que version de Excel estas usando? De ultima me pasas en un Excel limpio los datos que tienes en la Hoja ticket y luego yo los pego en mi archivo y veo que pasa.

Saludos
Archivos
Tickets.zip
No tienes los permisos para descargar los archivos.
(87 KB)

pepehillo


Hola Tyno:

Ya está solucionado. Ha salido bordado. Es perfecto. Has trabajado enormemente, y te agradezco de una forma infinita cómo has solucionado cada ejercicio de una manera tan brillante.
Es de agradecer, que existan personas que sin conocer a otras les pueda ayudar cuando tienen un problema, y tú, en ningún momento me has rechazado.
Creo, que esta herramienta puede ser utilizada por los componentes de mundo excell gracias a ti.


Sinceramente, mil gracias.


Un saludo

Ver el tema anterior Ver el tema siguiente Volver arriba  Mensaje [Página 1 de 1.]

Permisos de este foro:
No puedes responder a temas en este foro.