Herramientas, aplicaciones y hojas excel y de Google para seguimiento de carteras

¿Ha dejado google finance de dar los datos de acciones italianas?

Habra que ponerles una cabeza de caballo en la cama para que dejen de hacer el tonto…

¿Tendrá algo que ver con la declaración del estado de emergencia? :thinking:

Editar algo en una google spreadsheet se ha convertido en un dolor de :egg: :egg: con el último cambio que te obliga a escapar 2 veces porque salta a la edición de la casilla de abajo después de pulsar Enter en lugar de simplemente posicionarse

¿No hay side project que haga bien esta gente?

Problemas de ricos :kissing_heart:

Por si a alguien le sirve el apaño

Puedes crearte una funcion en Extensiones > Apps Script y pillar los datos de yahoo finance

function yahooFinance(ticker) {
const url = “https://finance. yahoo. com/quote/” + ticker + “?p=” + ticker ;
const res = UrlFetchApp.fetch(url, {muteHttpExceptions: true});
const contentText = res.getContentText();
const price = contentText.match(/<fin-streamer(?:.*?)active=“”>(\d+[,]?[\d.]+?)</fin-streamer>/);
return price[1];
}

Para conseguir que actualice los datos luego la invocas asi:
=YAHOOFINANCE(“MONC.MI”,$AF$92)
el segundo argumento es una casilla que modificas (puedes poner y quitar un valor o poner un checkbox y marcarlo y desmarcarlo). Basta con que googlesheet detecte un cambio en esa casilla.
image

Por ahora lo apañaremos así :frowning:

Si alguien tiene una solución mejor …

P.D: Quitad los espacios en “https://finance. yahoo. com/quote/”. Los he puesto porque si no el foro lo interpreta y pone otra cosa

5 Me gusta

He usado tu script y me ha venido muy bien, gracias.
Pero esta línea la he tenido que cambiar ya que me daba error de parseo

  const price = contentText.match(/<fin-streamer(?:.*?)active="">(\d+[,]?[\d\.]+?)<\/fin-streamer>/);

La diferencia es que he tenido que escapar la barra del tag de cierre “fin-streamer”.

He revisado y resulta que yo también lo tengo con el escapado

Imagino que al hacer copy paste el foro interpretó el escapado en lugar de simplemente mostrarlo

1 me gusta

Siempre se puede crear una macro que actulice cada día esa celda true/false en función de su valor.

Parece que ya se arregló de lo las acciones italianas y lo de la edición de celdas

Sabéis si es posible importar a Google Sheets el dato del euribor?

En Google Sheets:

¿Es posible vincular el color de una celda al color de otra celda? No crear un formato condicional en función del valor de otra celda, sino en función de su color.

Vamos, hacer que cuando la celda origen cambie de color lo haga la otra del mismo modo.

Por todo lo que he estado mirando creo deducir que no, pero por aquí hay unos cuantos frikis del tema … a ver si sonara la flauta.

Un saludo.

Hablamos de si cambias tu manualmente el color de esa celda original no?

No. La celda original importa mediante fórmula importhtml un valor y adquiere un determinado color si su valor es distinto al consignado en el formato condicional. Entonces lo que quiero hacer es que otra celda situada en otra hoja de cálculo de ese mismo libro replique el color de esa celda original, de modo que sin necesidad de que tenga que ir a mirar si el valor de la misma varía y activa su condición de color este se replique en esa otra hoja en la que trabajo habitualmente.

La idea es intentar evitarme el tener que ir a mirar la celda original para ver si su valor está actualizado o no.

Gracias por el interés @jgr23.

Un saludo.

No tengo ordenador a mano, pero has probado a poner formato condicional con fórmula en esa segunda celda con unos IF replicando la lógica de formato de la celda del importhtml?

1 me gusta

Yo creo que lo mas sencillo es aplicar la lógica original para que cierta casilla devuelva un conjunto de posibles valores y después ya aplicas el formato condicional en tantos sitios como necesites apuntando a la primera.

Igual lo has pensado y no te cuadra por algo, pero siempre debería ser mas fácil de mantener eso al reducir dependencias indirectas.

1 me gusta

Gracias @jgr23 y @alex_broadcast.

El caso es que, a ver si consigo explicarme …, la celda original por así decirlo no es una única celda.

Lo que alimento con las importhtml es una especie de base de datos, esa serie de datos se replica para cada valor y en entre la serie de datos está la celda origen que menciono, pero no es una única celda, sino que es la celda que mantiene ese dato importado en concreto para cada valor.

El dato, para que se pueda entender mejor el asunto, es una fecha. Dicha fecha varía en el origen, de donde se nutren los importhtml antes citados, entonces para saber si ha variado y no tener que estar revisando todas las series la celda origen de esa primera hoja que alimentan los importhtml mantiene un formato condicional de modo que si esa fecha varía de la consignada como condición en el formato condicional la celda cambia a un determinado color siendo así muy fácil visualmente al examinar la hoja si los datos de las diferentes series están actualizados o no.

La solución propuesta de aplicar esa misma lógica en la segunda hoja no la veo viable (si estoy errado hacédmelo saber y mis disculpas por ello) porque en esa segunda hoja no se replican todas las series sino que seleccionado el ticker del valor en un desplegable, se cargan únicamente todos los datos de la serie correspondientes a ese ticker, entre ellos el de esa celda, en esta segunda hoja. Entonces entiendo que siendo así es imposible replicar el formato condicional porque la condición varía en cada valor en esa primera hoja, no es la misma fecha en todos vamos.

De ahí que lo que busque es que una vez que la celda en cuestión varíe de color en la primera hoja, si ese valor en concreto es llamado en la segunda hoja a través de selección en el desplegable, una vez se carguen los datos de su serie, la celda en cuestión entre ellos, si esta mantiene un color en la primera hoja lo replique en la segunda.

De este modo sin necesidad de tener que ir a la primera hoja a confirmar los datos se puede saber si están actualizados o no.

Entonces, como decía, hasta donde he podido ver en todo lo que he estado leyendo, no es posible replicar así el formato condicional para el color basándose en el color de otra celda. Al menos de la forma básica, ya que desconozco si sería posible recurriendo a programación.

Espero haber sabido explicarme, no obstante si hay algo que no se entiende o genera duda… sin problema comentadlo y trato de re explicarme :blush:

Un saludo y gracias de nuevo por el interés.

Aún con todo el detalle, me cuesta ver el ejemplo con este sopor dominguero. Podrías hacer un Sheets pequeño con algo que se parezca a lo que tienes montado?

Lo que dices de la alternativa de usar AppScript, con eso seguro que se puede solucionar si no hubiese una manera “nativa”

1 me gusta

La respuesta de la IA

3 Me gusta

joe, listo es el chtgpt ese

Gracias @alfan

Iba a subir una hoja simple para jgr ahora

Un saludo.