Skip to main content
cancel
Showing results for 
Search instead for 
Did you mean: 

Earn the coveted Fabric Analytics Engineer certification. 100% off your exam for a limited time only!

Reply
jasmine9
Helper I
Helper I

Comparación de fecha de columna múltiple y reemplazar con la fecha más temprana

Hola

Soy un usuario relativamente nuevo de PowerBI. Me parece difícil implementar algunos de los requisitos usando powerBI.

Tengo 4 columnas de fecha, DateA, DateB, DateC y DateD. (Algunos de estos pueden tener un valor en blanco)

Quiero recorrer estos bucles y hacer lo siguiente:

1. Si alguna de las 3 columnas tienen el mismo valor de fecha, compare ese valor con la 4a columna para encontrar la fecha más temprana y reemplazar las 4 fechas con esta fecha más baja. solo se deben reemplazar las columnas no en blanco.

2. Si de los 4, algunos están en blanco, ignore eso para la comparación. es decir, si una columna está en blanco, entonces si 2 columnas son las mismas, se puede comparar con la 3a y la fecha más temprana encontrada.

3. si 3 de ellos no coinciden, entonces marca toda la fila como "intervención manual"

Sin tener bucles "for", esto es un poco difícil para mí.

Me las arreglé para identificar la fecha más temprana para #1 y "intervención manual" para #3 con la ayuda de un montón de declaraciones if, pero:

Un. Si alguna columna está en blanco, no sé cómo funcionará la lógica

B. No sé cómo marcar y reemplazar todas las celdas con el valor más bajo que se encuentra aquí.

c. Pregunta general. Puede "si - entonces" tener varias instrucciones después de entonces. como si a-b entonces - c-d; e-f- ?

Aquí está mi código para identificar #1 y #3 anteriores:

• Table.AddColumn('Añadido col para FutureHire', "FutureHires-Actualizado todas las fechas con el original contratado", cada uno
si ([DateA] á [DateB]) entonces
si ([DateB] á[DateC] ) entonces
si [DateC] < [DateD] y, a continuación, [DateC] else [DateD]
si , [DateB] - [DateD]) a continuación,
if ([DateC] < [DateD]) y luego [DateC] else [DateD]
otra "esta condición no debe surgir"
else if ([DateB] á [DateC]) entonces
si ([DateC] á [Fecha]) entonces
if ([DateA] < [DateD]) y luego [DateA] else [DateD]
otra "esta condición no debe surgir"
else if([DateA] á [DateC] y [DateA] - [Fechado]) a continuación,
if ([DateA] < [DateB]) y luego [DateA] else [DateB]
otra "Intervención Manual"

¿Mi enfoque está completamente equivocado aquí? ¿puedes ayudarme a guiarme sobre cómo lograr esto? Para lograr #2 anterior (si una columna está en blanco), necesito tener otro conjunto completo de condiciones if?

Gracias de antemano,

Chaqueta

1 ACCEPTED SOLUTION
v-zhenbw-msft
Community Support
Community Support

Hola @jasmine9 ,

Podemos usar los siguientes pasos para satisfacer sus necesidades.

1. Haga clic en Columna de ID y despocupe otras columnas.

Mu1.jpg

2. Copie la tabla y agrupe una de ellas.

Mu2.jpg

3. Combine la tabla de grupo y expanda la fecha mínima.

Mu3.jpg

4. Luego seleccione la columna id y la columna de valor dinámico.

Mu4.jpg

5. Utilice la columna condicional para crear cuatro columnas de fecha para separar el valor nulo.

Mu5.jpg

Mu6.jpg

6. Por fin podemos agregar otra columna condicional, luego eliminar la Fecha.A, B, C, D.

Mu7.jpg

Mu8.jpg

Si no cumple con sus requisitos, ¿podría mostrar el resultado esperado exacto basado en la tabla que ha compartido?

Saludos

Equipo de apoyo a la comunidad _ zhenbw

Si este post ayuda,entonces considere Aceptarlo como la solución para ayudar a los otros miembros a encontrarlo más rápidamente.

BTW, pbix como adjunto.

View solution in original post

5 REPLIES 5
v-zhenbw-msft
Community Support
Community Support

Hola @jasmine9 ,

Podemos usar los siguientes pasos para satisfacer sus necesidades.

1. Haga clic en Columna de ID y despocupe otras columnas.

Mu1.jpg

2. Copie la tabla y agrupe una de ellas.

Mu2.jpg

3. Combine la tabla de grupo y expanda la fecha mínima.

Mu3.jpg

4. Luego seleccione la columna id y la columna de valor dinámico.

Mu4.jpg

5. Utilice la columna condicional para crear cuatro columnas de fecha para separar el valor nulo.

Mu5.jpg

Mu6.jpg

6. Por fin podemos agregar otra columna condicional, luego eliminar la Fecha.A, B, C, D.

Mu7.jpg

Mu8.jpg

Si no cumple con sus requisitos, ¿podría mostrar el resultado esperado exacto basado en la tabla que ha compartido?

Saludos

Equipo de apoyo a la comunidad _ zhenbw

Si este post ayuda,entonces considere Aceptarlo como la solución para ayudar a los otros miembros a encontrarlo más rápidamente.

BTW, pbix como adjunto.

Syndicate_Admin
Administrator
Administrator

Hola

Compartir datos en un formato que se puede pegar en un libro de MS Excel y mostrar el resultado exacto que está esperando.

Este es un ejemplo de mis datos y acción requeridos: Mi código está en powerquery, no en Excel.

IdDateADateBDateCFechaMedidas a tomar
18/25/20208/1/20178/25/20208/25/2020reemplazar col A, col C y col d por 8/1/2017
27/1/2020 7/2/20207/3/2020bandera como intervención manual
36/1/20206/1/20206/5/2020 sustituir col c por 6/1/2020
4 5/1/2020 5/2/2020bandera como intervención manual
54/1/2020 4/21/20204/21/2020sustituir col c y d por 4/1/2020
63/1/20203/1/2020 4/1/2020sustituir col d por 3/1/2020

Id DateA DateB DateC Fecha Medidas a tomar
18/25/20208/1/20178/25/20208/25/2020reemplazar col A, col C y col D por 8/1/2017
27/1/2020 7/2/20207/3/2020bandera como intervención manual
36/1/20206/1/20206/5/2020 sustituir col c por 6/1/2020
4 5/1/2020 5/2/2020bandera como intervención manual
54/1/2020 4/21/20204/21/2020sustituir col c y d por 4/1/2020
63/1/20203/1/2020 4/1/2020sustituir col d por 3/1/2020

1. Si alguna de las 3 columnas tienen el mismo valor de fecha, compare ese valor con la 4a columna para encontrar la fecha más temprana y reemplazar las 4 fechas con esta fecha más baja. solo se deben reemplazar las columnas no en blanco.

2. Si, de los 4, algunos están en blanco, ignore eso para la comparación. es decir, si una columna está en blanco, entonces si 2 columnas son las mismas, se puede comparar con la 3a y la fecha más temprana encontrada.

3. si 3 de ellos no coinciden, entonces marca toda la fila como "intervención manual"

Hola

Alguien más le ayudará con esto, por favor.


Regards,
Ashish Mathur
http://www.ashishmathur.com
https://www.linkedin.com/in/excelenthusiasts/

Helpful resources

Announcements
April AMA free

Microsoft Fabric AMA Livestream

Join us Tuesday, April 09, 9:00 – 10:00 AM PST for a live, expert-led Q&A session on all things Microsoft Fabric!

March Fabric Community Update

Fabric Community Update - March 2024

Find out what's new and trending in the Fabric Community.

Top Solution Authors