Saltar al contenido

Dinamizar varias columnas por año y mes


Recommended Posts

Saludos a todos estoy por acá requiriendo de nuevo de su valiosa colaboración,hace poco un gran colaborador de este foro me enseño a dinamizar una columna y eso fue genial,sin embargo me trae de nuevo por acá la necesidad de dinamizar varias columnas,y no supe hacerlo ya que solo tengo 2 semanas practicando con PQ y mis conocimientos son escasos,se trata de hacer un reporte de ventas donde me muestre el resultado de las ventas de años anteriores y los meses del año en curso,lo se hacer sin problemas con Tablas dinámicas pero quiero aprender a hacerlo de otra forma y que de paso sea dicho es mejor usando PQ,aquí dejo el ejemplo de como debe quedar la consulta en PQ ,esta creada con una tabla dinámica,agradezco mucho la ayuda que puedan prestar saludos

PQ.xlsm

Enlace a comentario
Compartir con otras webs

Creo que mas bien te complicarías mas con PQ, Power Query lo utilizo como una forma de dar formato a mis datos para después con el uso de tablas dinámicas extraer la información y crear mis reportes. Por lo tanto, si tus datos ya tienen el formato ideal y puedes sacar la información directamente de ellos con una tabla dinámica, no veo ventaja de tratarlos en PQ.

Saludos.

Enlace a comentario
Compartir con otras webs

Holas!

De acuerdo con @AlexanderS 

Power Query esta diseñado para transformar nuestras BD y Dax para poder calcular nuestras TD

PQ es como VBA y Dax las formulas en Excel, solo que mas potente, pero si en realidad lo que deseas es mostrar una Tabla en vez de TD, te adjunto una solucion con Power Query

PD: las BD no deben tener filas vacías, aunque en PQ, es facil de resolver 

 

Saludos a ambos

Emular tabla dinamica con power query_GP.zip

Enlace a comentario
Compartir con otras webs

Hola a todos gracias por comentar,es cierto lo que me dicen,sin embargo me gusta que el reporte de PQ se genera como una tabla cualquiera y en ella puedo realizar los calculos que desee ,bueno hasta donde he probado,realmente aunque las TD son potente su interface no me gusta y me veo limitado al realizar algunos calculos con campos calculados entre otras cosas,que tal vez para ustedes no es problema,y al descrubrir power query dije "Listo el reemplazo de la tablas dinamicas",perdon por mi ignorancia pero es lo que pienzo ,tal vez sin fundamento,aun asi gracias por su tiempo y su amable aporte son un grupo genial y espero a futuro seguir contando con ustedes para aumentar los conocimientos de PQ y TD hasta la proxima

Enlace a comentario
Compartir con otras webs

Hace 17 horas, Gerson Pineda dijo:

Holas!

De acuerdo con @AlexanderS 

Power Query esta diseñado para transformar nuestras BD y Dax para poder calcular nuestras TD

PQ es como VBA y Dax las formulas en Excel, solo que mas potente, pero si en realidad lo que deseas es mostrar una Tabla en vez de TD, te adjunto una solucion con Power Query

PD: las BD no deben tener filas vacías, aunque en PQ, es facil de resolver 

 

Saludos a ambos

Emular tabla dinamica con power query_GP.zip 48 kB · 4 downloads

Gerson gracias por tu respuesta,queria mencionarte que el ejemplo esta bueno salvo que en el 2019 deben reflejarse las ventas por meses ya que no ha terminado el año,¿sera que es posible hacer eso en PQ?

Enlace a comentario
Compartir con otras webs

Hace 14 horas, nickmartinez dijo:

Hola a todos gracias por comentar,es cierto lo que me dicen,sin embargo me gusta que el reporte de PQ se genera como una tabla cualquiera y en ella puedo realizar los calculos que desee ,bueno hasta donde he probado,realmente aunque las TD son potente su interface no me gusta y me veo limitado al realizar algunos calculos con campos calculados entre otras cosas,que tal vez para ustedes no es problema,y al descrubrir power query dije "Listo el reemplazo de la tablas dinamicas",perdon por mi ignorancia pero es lo que pienzo ,tal vez sin fundamento,aun asi gracias por su tiempo y su amable aporte son un grupo genial y espero a futuro seguir contando con ustedes para aumentar los conocimientos de PQ y TD hasta la proxima

Permitime aclararte, pero PQ no va reemplazar las TD, pero si nos viene a dar mas que una mano, para poder trabajar nuestras BD y luego calcularlas en TD

Las tablas dinamicas no son solo campos calculados, tambien y como lo comente al inicio que DAX, es una gama de funciones integradas en Power Pivot [lee sobre este inmenso tema]

 

Saludos 

Enlace a comentario
Compartir con otras webs

¡Hola, a todos!

Hace 4 horas, nickmartinez dijo:

el ejemplo esta bueno salvo que en el 2019 deben reflejarse las ventas por meses ya que no ha terminado el año

Puedes intentar una modificación a lo propuesto por @Gerson Pineda de la forma que lo muestro en el adjunto.  ¡Bendiciones!

Emular tabla dinamica con power query_GP.zip

Enlace a comentario
Compartir con otras webs

Hace 1 hora, Gerson Pineda dijo:

Permitime aclararte, pero PQ no va reemplazar las TD, pero si nos viene a dar mas que una mano, para poder trabajar nuestras BD y luego calcularlas en TD

Las tablas dinamicas no son solo campos calculados, tambien y como lo comente al inicio que DAX, es una gama de funciones integradas en Power Pivot [lee sobre este inmenso tema]

 

Saludos 

Gracias de nuevo Gerson,seguire tu sugerencia con respecto a DAX

Enlace a comentario
Compartir con otras webs

Hace 1 hora, johnmpl dijo:

¡Hola, a todos!

Puedes intentar una modificación a lo propuesto por @Gerson Pineda de la forma que lo muestro en el adjunto.  ¡Bendiciones!

Emular tabla dinamica con power query_GP.zip 49 kB · 0 downloads

Hermano te agradezco tu ayuda esta genial,de verdad me falta mucho por practicar,entiendo las lineas de codigo de la columna personalizada,pero desconocia las funciones que ususte,como dice gerson me falta documentarme mas pero ya se que buscar por ejemplo mil gracias a todos...

Enlace a comentario
Compartir con otras webs

Archivado

Este tema está ahora archivado y está cerrado a más respuestas.

  • 96 ¿Te parecen útiles los tips de las funciones? (ver tema completo)

    1. 1. ¿Te parecen útiles los tips de las funciones?


      • No
      • Ni me he fijado en ellos

  • Ayúdanos a mejorar la comunidad

    • Donaciones recibidas este mes: 0.00 EUR
      Objetivo: 130.00 EUR
  • Archivos

  • Estadísticas de descargas

    • Archivos
      177
    • Comentarios
      90
    • Revisiones
      27

  • Crear macros Excel

  • Mensajes

    • Hi Trate de ver que hacían las fórmulas en cuestión pero a su libro le falta o le faltan hojas, por lo que solo podría participar con un par de ideas en general. Lo que entiendo es que según el valor de B3 en C3 debe poner una fórmula u otra, así que es posible que si combina DIRECCION() con INDIRECTO() pueda intercambiar de una fórmula a otra. =SI(B3="Xl",INDIRECTO(DIRECCION(3,5)),SI(O(B3=1,B3=2,B3=3),INDIRECTO(DIRECCION(4,5)),"")) Otra forma sería poner nombre a esas fórmulas en el cuadro de nombres para que las pueda mandar llamar a una o a la otra según el resultado de B3. Por favor tome en cuenta, es solo una idea.
    • Buenas tardes! Tengo el siguiente código: Private Sub btnCargaBancos_Click() Dim TasaCompra, TasaVenta As Double Dim InvBanesco, InvVzla, MontoBanesco, MontoVzla As Double Dim TasaDiaBan, TasaDiaVzla, TasaActual As Double 'Inversion = Val(txtInversion.Text) InvBanesco = Val(CDbl(txtInverBanesco.Text)) InvVzla = Val(CDbl(txtInverVzla.Text)) TasaCompra = Val(CDbl(txtTasaCompra.Text)) TasaVenta = Val(CDbl(txtTasaVenta.Text)) MontoBanesco = (InvBanesco / TasaCompra) * (1 - 0.18 / 100) * (TasaVenta * (1 - 0.18 / 100)) MontoVzla = (InvVzla / TasaCompra) * (1 - 0.18 / 100) * (TasaVenta * (1 - 0.18 / 100)) TasaDiaBan = (MontoBanesco / InvBanesco) * (1 - 0.055)      TasaDiaVzla = (MontoVzla / InvVzla) * (1 - 0.055) If TasaDiaBan < TasaDiaVzla Then     TasaActual = TasaDiaBan Else     TasaActual = TasaDiaVzla End If MontoBanesco = FormatNumber(MontoBanesco, 2, True, vbFalse) MontoVzla = FormatNumber(MontoVzla, 2, True, vbFalse) TasaActual = FormatNumber(TasaActual, 5, True, False) txtBcoBanesco.Value = MontoBanesco txtBcoVenezuela.Value = MontoVzla txtTasaDiaria.Value = TasaActual End Sub   Como se puede apreciar InvBanesco ,  InvVzla , TasaCompra y TasaVenta, son valores que introduce el usuario a través de los respectivos cuadros de texto. Tengo los siguientes problemas: a. Las fórmulas no se ejecutan correctamente (pareciese que no reconociese los números entrados vía cuadros de texto). b. Al darle valor cero (0) a cualquiera de los valores de InvBanesco o  InvVzla, me genera un error en TasaDiaBan o TasaDiaVzla (según sea el caso), aunque, como se puede apreciar, debería generar un valor cero (0). Como dije en mi presentación estoy empezando en esto de la codificación...y quiero aprender de Uds! Agradezco su ayuda! Nota: lamentablemente el fichero es mas grande de lo permitido y no pude anexarlo.  
    • Hola buenas tardes. En una hoja plantilla donde realizo diferentes consultas de datos. tengo ya establecido dos formulas diferentes con función SI y buscar. estos buscan diferentes rangos de datos y recibendiferentes resultados. Cada formula varia según una palabra o numero  ejemplo si pongo Xl pone la formula 1 y si pongo cualquier numero entre 1 y 3 pone la segunda formula. Lo que necesito hacer es que si en una celda de la columna B3 pongo XL debería de considerar la formula 1 y si pusiera el numero 1 me pondría la segunda formula, dentro de la misma formula. Ya agregue la función SI($C3="Xl",Formula1.. Pero no me funciona, espero me puedan ayudar.   Muchas gracias Mariano   Formula doble si en celda existe.xlsx
    • Sub control2558() Application.ScreenUpdating = False Dim I As Integer I = 4 While Sheets("FT-ADF-2558").Cells(I, 102) <> "" Sheets("FT-ADF-2558").Cells(6, 82) = Sheets("FT-ADF-2558").Cells(I, 102) Dim NombreArchivo, RutaArchivo As String NombreArchivo = "Hoja Control " & Sheets("FT-ADF-2558").Cells(I, 102) RutaArchivo = ActiveWorkbook.Path & "\" & NombreArchivo & ".xlsm" Dim NuevoLibro As Workbook Set NuevoLibro = Workbooks.Add Sheets("FT-ADF-2558").Copy Before:=NuevoLibro.Sheets(1) NuevoLibro.SaveAs Filename:=RutaArchivo NuevoLibro.Close I = I + 1 Wend MsgBox ("Proceso generado con éxito") Application.ScreenUpdating = True End Sub  
    • Ese error es porque no existe la hoja 10 con ese nombre, entonces cámbialo por FT-ADF-2558
  • Visualizado recientemente

    • No hay usuarios registrado para ver esta página.
×
×
  • Crear nuevo...

Información importante

Echa un vistazo a nuestra política de cookies para ayudarte a tener una mejor experiencia de navegación. Puedes ajustar aquí la configuración. Pulsa el botón Aceptar, si estás de acuerdo.