53 Columnas de tiempo, algunas vacías y otras llenas. ¿Cómo escribo una fórmula que asegure que la columna llena más alta sea> que la siguiente columna llena, etc.?Si tengo cientos de filas, cada fila es un ticket de trabajo independiente, cada fila puede tener hasta 53 columnas de tiempo completadas, pero la mayoría solo tiene algunas de estas columnas completadas y las intermedias están en blanco.
Entonces, digamos para la Fila n. ° 1: tengo la columna 1, la columna 23 y la columna 36 son las únicas columnas que contienen una marca de tiempo, necesitaré saber que 36> 23 y 23> 1.
Para la Fila n. ° 2, todas las columnas tienen marcas de tiempo, por lo que necesitaré saber que [53> 52, ............, 2> 1].
Gracias
Fiona
Tabla de datosRe: 53 columnas de tiempo, algunas vacías y otras llenas. ¿Cómo escribo una fórmula que asegure que la columna llena más alta sea> que la siguiente columna llena, etc.?Solo para aclarar; Todos deberían ser correctos, así que creo que la forma más fácil es tener una columna de marcado que muestre un "1" al final de cualquier fila donde arriba no es el caso.
Re: 53 columnas de tiempo, algunas vacías y otras llenas. ¿Cómo escribo una fórmula que asegure que la columna llena más alta sea> que la siguiente columna llena, etc.?No estoy exactamente seguro de que esto sea lo que desea, pero el siguiente script escanea las columnas y se asegura de que todos los valores de fecha aumenten desde la fecha anterior.En caso contrario, coloca el nombre de la columna que ha detectado una fecha anterior a la anterior.
Names Default To Here( 1 );
dt = Current Data Table();
If( Try( dt:flag << get name, "" ) == "",
dt << New Column( "Flag", Character )
);
For( rowNum = 1, rowNum <= N Rows( dt ), rowNum++,
For( startCol = 1, startCol <= N Cols( dt ), startCol++,
If( Is Missing( Column( startCol )[rowNum] ) == 0,
holdVal = Column( startCol )[rowNum];
Break();
)
);
For( col = startCol + 1, col <= N Cols( dt ) - 1, col++,
If( Is Missing( Column( Col )[rowNum] ) == 0,
If( Column( Col )[rowNum] < holdVal,
dt:Flag[rowNum] = (Column( Col )) << get name;
holdVal = Column( col )[rowNum];
Break();
,
holdVal = Column( Col )[rowNum]
)
)
);
);