Excel importar colores de celdaHe usado los colores de celdas de importación en la importación de Excel porque tengo clientes que colorean celdas que deben incluirse o excluirse. Los colores importan bien, pero no he encontrado una manera fácil de acceder al estado de color de la celda para excluir esas celdas. La única solución que he encontrado es obtener el script de columnas y analizar los números de las filas. Me temo que esto podría no ser muy confiable. ¿Hay alguna función para leer el color de la celda directamente? Tenga en cuenta que los colores de la celda de importación no cambian los estados de las filas ni establecen propiedades de color para la columna.
dt = Open(
"Data.xlsx",
Worksheets( "Sheet1" ),
Use for all sheets( 0 ),
Worksheet Settings(
1,
Has Column Headers( 1 ),
Number of Rows in Headers( 1 ),
Headers Start on Row( 2 ),
Data Starts on Row( 3 ),
Data Starts on Column( 1 ),
Data Ends on Column( 1 ),
Import Cell Colors( 1 )
)
);
Rlist = {};
t = arg(arg((:SubjectID << get script),4),1);
for(i=1,i<=narg(t),i++,insert into(Rlist, arg(arg(t,i),2))); //the first arg is the colour the second the list of rows
dt1 = dt << subset(rows(Rlist));Re: Excel importar colores de celdaEsto es solo un FYI para los lectores del blog, no como un experto en pelar los argumentos de una expresión.
Si necesita obtener los números de fila (y el color) de las celdas coloreadas en una columna de cualquier tabla de datos JMP, las Celdas de color no son el cuarto argumento si hay otras propiedades asociadas con la columna.
Se adjunta la tabla de datos de muestra Big Class.jmp con la edad de la columna con 2 conjuntos de celdas de colores (rojo y azul). Y a continuación se muestra una función que se puede aplicar a cualquier columna con un ejemplo aplicado a la columna: edad.
CellColors = Function({colnme}, {ccol, cjsl, i, targ, clr={}, found=0},
ccol = column(current data table(), colnme);
cjsl = ccol << get script;
//show(cjsl);
for(i=1, i<=N Arg(cjsl) & found==0, i++,
targ = Arg Expr(cjsl, i);
//show(i, HeadName(targ));
if(Head Name(targ) == "Color Cells", found=1; )
);
for(i=1, i<=N Arg(targ), i++,
insert into(clr, Arg Expr(targ,i))
);
clr
);
clrList = CellColors("age");
show(clrList); Re: Excel importar colores de celdaLa única forma que conozco de recuperar los colores de las celdas es recuperar la secuencia de comandos de la columna, según lo establecido. No he encontrado ningún cambio para esto en JMP 14.