Buenas tardes;
Estoy intentando hacerme una app para el seguimiento de asistencia en el trabajo y... se me esta resistiendo la formulación en appsheet, por mas vueltas que no lo doy no soy capad, haber si me podeis ayudar a formular las siguientes formulas de excel en el lenguaje de appsheet.
Tengo 2 tablas, empleados y asistencia, en empleados tengo los empleados y en asistencia los fichajes.
En la columna G de la tabla asistencia (llamada DIFERENCIA) quiero añadir la siguiente formula:
La J es la columna ESTADO
PARCIAL aparece en la columna llamada ESTADO
La F es la columna FECHA_FIN
La E es la columna FECHA_INICIO
=SI(J2="PARCIAL";""; F2-E2)
En la columna H de la tabla asistencia (llamada RESTANTE) quiero añadir la siguiente formula:
La J es la columna ESTADO
PARCIAL aparece en la columna llamada ESTADO
La columna I es la columna HORA_SALIDA
=SI(J2="PARCIAL";
SI(I2-AHORA()<0;
AHORA()-I2;
"-"&TEXTO(I2-AHORA();" hh:mm:ss"));
"")
En la columna I de la tabla asistencia (llamada HORA_SALIDA) quiero añadir la siguiente formula:
La J es la columna ESTADO
PARCIAL aparece en la columna llamada ESTADO
La columna B de la tabla EMPLEADOS es la columna CODIGO
La columna E de la tabla EMPLEADOS es la columna HORAS_DIA
La D es la columna FECHA
La G es la columna DIFERENCIA
La E es la columna FECHA_INICIO
=SI(J2="PARCIAL";
BUSCAR(B2; ¡EMPLEADOS! B:B; ¡EMPLEADOS! E:E)-(SUMAR.SI(D:D;D2; G:G)+(AHORA()-E2))+AHORA();
"")
Son formulas sencillas en excel pero en appsheet no estoy siendo capad.
Gracias.
Solved! Go to Solution.
Buenas Pmartinez
Tengo una columna referencia llamada "NOMBRE".
Estoy intentando hacer la 3º formula a cachos y...creo que algo he conseguido pero me da error en algo que no se si pongo bien.
Este es el cacho que creo que he echo pero sale el error "Expresión aritmética '(NOW()-([FECHA_INICIO] = [_THISROW].[ FECHA_INICIO]))' tiene entradas de un tipo no válido 'Desconocido' "
El error le da en lo marcado en negro.
=SUMAR.SI(D:D;D2;G:G)+(AHORA()-E2))+AHORA()
Esto es lo que he puesto:
voy a seguir dándolo un par de vueltas haber que consigo.
muchas gracias por ayudarme.
Buenas tardes Joseph.
Gracias por contestar, me leido lo que me pasate pero no consigo formular, me doy por vencido.
gracias de todas formas
Hola, para tu primer formula puedes hacer un if dentro de la columna diferencia algo asi me la imagino:
IF([ESTADO]="PARCIAL","",[FECHA_FIN]-[FECHA_INICIO])
para tu segunda formula no entiendo muy bien lo que buscas... quieres sacar el tiempo que falta para su hora de salida?
con la ultima tampoco entendi que es lo que necesitas
Muchas gracias por contestar Pmartinez.
La primera fórmula ha sido la única que he conseguido hacer ( la hice igual que la que me has pasado ) pero las otras 2 no lo consigo, ayer me tire toda la tarde probando y nada.
En la segunda formula la intención es que me de el tiempo que queda por hacer en negativo y en positivo si me he pasado.
La celda J2 es la Columna ESTADO
La celda I2 es la Columna HORA_SALIDA
=SI(J2="PARCIAL";
SI(I2-AHORA()<0;
AHORA()-I2;
"-"&TEXTO(I2-AHORA();"hh:mm:ss"));
"")
_________
En la tercera formula la intención es que me de la hora de salida según los fichajes que lleve.
La celda J2 es la Columna ESTADO
La celda B2 es la columna NOMBRE de la tabla ASISTENCIAS
La celda B:B es la columna NOMBRE de la tabla EMPLEADOS
La celda E:E es la columna HORAS_DIA de la tabla EMPLEADOS
La celda D:D es la columna FECHA de la tabla ASISTENCIAS
La celda D2 es la columna FECHA de la tabla ASISTENCIAS
La celda G:G es la columna DIFERENCIA de la tabla ASISTENCIAS
La celda E2 es la columna FECHA_INICIO de la tabla ASISTENCIAS
=SI(J2="PARCIAL";
BUSCAR(B2;EMPLEADOS!B:B;EMPLEADOS!E:E)-(SUMAR.SI(D:D;D2;G:G)+(AHORA()-E2))+AHORA();
"")
Muchas gracias por ayudarme.
Te esta marcando algun error a la hora de generar la formula en appsheet?
hice una prueba para sacar el restante me salio asi la formula en appsheet:
if(
[Estado]="PARCIAL",
if([Hora_salida]-now()<"000:00:00",now()-[Hora_salida],
[Hora_salida]-now()),
"")
poniendo datos de prueba, me hace los calculos y ya los pone en positivo o negativo sin que tenga que convertirlo a texto
si quieres revisa la formula haber si ahi te da una idea de lo que pueda estarte fallando en tu formula.
para el ultimo lo reviso mas tarde.
Muchísimas gracias, funciona perfectamente, yo me estaba complicando poniendo cosas que no tenían sentido.
Lo dicho, muchas gracias.
La siguiente formula es la que creo que es mas complicada.
Por cierto, estoy intentando poner la segunda formula en una columna virtual de otra tabla y me da diferentes errores segun los cambios que hago.
Este es el error de la siguiente formula "La función IF se utiliza incorrectamente:la primera entrada debe ser una condición que devuelva true o false."
IF(
SELECT(FICHAJES[ID], AND([NOMBRE]=[_THISROW].[NOMBRE], [ESTADO]="PARCIAL"))
FICHAJES[Hora_salida]-now()<"000:00:00",
SELECT(FICHAJES[ID], AND([NOMBRE]=[_THISROW].[NOMBRE], [ESTADO]="PARCIAL"))
now()-FICHAJES[Hora_salida],
SELECT(FICHAJES[ID], AND([NOMBRE]=[_THISROW].[NOMBRE], [ESTADO]="PARCIAL"))
FICHAJES[Hora_salida]-now())
Muchísimas gracias por la ayuda.
como estas relacionando esta segunda tabla con la tabla de fichajes? tienes alguna columna donde pongas la referencia? o como haces la relacion?
Buenas Pmartinez
Tengo una columna referencia llamada "NOMBRE".
Estoy intentando hacer la 3º formula a cachos y...creo que algo he conseguido pero me da error en algo que no se si pongo bien.
Este es el cacho que creo que he echo pero sale el error "Expresión aritmética '(NOW()-([FECHA_INICIO] = [_THISROW].[ FECHA_INICIO]))' tiene entradas de un tipo no válido 'Desconocido' "
El error le da en lo marcado en negro.
=SUMAR.SI(D:D;D2;G:G)+(AHORA()-E2))+AHORA()
Esto es lo que he puesto:
voy a seguir dándolo un par de vueltas haber que consigo.
muchas gracias por ayudarme.
User | Count |
---|---|
15 | |
15 | |
8 | |
7 | |
4 |