Escribir valor en celda dependiendo de una 3 celda

Cualquier otro tipo de consultas sobre la Hoja de Cálculos Excel.

Reglas del Foro
1. Antes de hacer tu pregunta intenta con el buscador de este foro (muchas preguntas ya fueron respondidas antes!)
2. Si haces una nueva pregunta, es muy recomendable que adjuntes el ejemplo Excel para poder comprenderla mejor!
3. Realiza tu pregunta de forma clara, explicando bien cada paso de lo que haces y tendrás más probabilidad de respuesta!
Compartir en:
     

Escribir valor en celda dependiendo de una 3 celda

Notapor novaexcel » 12 Ene 2011 20:22

Hola, quisiera si es posible que me ayudarais con una duda.
Me explico tengo 12 celdas que quiero rellenar con un valor numerico, el cual sale del resultado de operaciones matematicas digamos que el resultado esta en la celda A1, en la celda A2 escribire un valor entre 1 y 12.
si uso la funcion SI en cada una de las 12 celdas cuando el valor de A2 es el de una de las celdas en esta se escribe el valor de A1 pero en las otras celdas se borra el resultado que huviese

lo que quiero es que el valor una vez escrito en una celda B1;B12 no se borre o se remplace hasta que en A2 no se escriba su valor

0 A
1 36
2 4
0 B
1 42
2 12
3 22
4 36
5
6
7
8
9
10
11
12
Esto seria la representacion de la tabla mas o menos
Me podrias ayudar, digamos que estoy en pañales
* Te recomendamos estos productos Excel: Manual de Macros | Manual de Funciones | Nuevas Funciones | ddTraDa
novaexcel
Miembro Frecuente
Miembro Frecuente
 
Registrado: 12 Ene 2011 20:00

Re: Escribir valor en celda dependiendo de una 3 celda

Notapor ficoaex » 13 Ene 2011 16:11

Que tal novaexcel, si entiendo bien los pasos son estos:

En A1 tienes un resultado, en A2 escribes un número del 1 al 12, de B1 a B12 quieres que si lo escrito en A2 corresponde a su número de serie devuelva el valor de A1, sino que deje el número que le corresponde del 1 al 12.

Si es así, podrías escribir esta fórmula en B1 y copiar hasta B12:

=SI($A$2=FILA(C1),$A$1,FILA(C1))

Saludos...
* Te recomendamos estos productos Excel: Manual de Macros | Manual de Funciones | Nuevas Funciones | ddTraDa
ficoaex
Miembro Frecuente
Miembro Frecuente
 
Registrado: 30 Dic 2010 15:14

Re: Escribir valor en celda dependiendo de una 3 celda

Notapor novaexcel » 13 Ene 2011 18:33

Gracias Ficoaex, pero el excel me da un error en la formula.
=SI($A$2=FILA(C1),$A$1,FILA(C1))
y no puedo probarlo, no se si te as percatado de mi identificacion ( novaexcel ).

Mi idea es, tengo unas operaciones que varia segun el mes, el resultado de la operacion se escribe en la celda A1, entonces le digo en que mes quiero que lo escriba si es el mes 1 lo escribe en B1,si es el mes 2 lo escribe en B2 y asi sucesivamente, el problema es que cuando he hecho la operacion 1 y en B1 se escribe ejemplo (34), cuando ejecuto la operacion 2 en B2 se escribe ejemp. (5) PERO, entonces el valor de B1 se pierde y eso no lo quiero, lo que deseo es que se complete la tabla para poder imprimirla al finalizar el año.
Es que demomento lo escribo directamente, y quisiera hacerlo digamos de forma automatica.
* Te recomendamos estos productos Excel: Manual de Macros | Manual de Funciones | Nuevas Funciones | ddTraDa
novaexcel
Miembro Frecuente
Miembro Frecuente
 
Registrado: 12 Ene 2011 20:00

Re: Escribir valor en celda dependiendo de una 3 celda

Notapor ficoaex » 13 Ene 2011 18:49

El error que te da creo yo es por yo utilizo "," y en tu Excel se utiliza ";" para separar los argumentos, pero de igual forma no es la fórmula que necesitas.

Creo que ahora ya te entendí, sino me cuentas.

Si te vas por el camino de las fórmulas, la función SI te sirve pero habría que ver las operaciones que dan el resultado. Si subieras un archivo me ayudarías.

Otro camino son las macros, pero como dices, eres nuevo en esto y las macros son más avanzadas, pero de todas formas te coloco un código que hace lo que quieres:

Sub NovaExcel()

Dim Mes, Dato, Desplazar

Mes = Range("A2").Value
Dato = Range("A1").Value

Range("B1").Select

ActiveCell.Offset(RowOffset:=Mes - 1).Value = Dato

End Sub
* Te recomendamos estos productos Excel: Manual de Macros | Manual de Funciones | Nuevas Funciones | ddTraDa
ficoaex
Miembro Frecuente
Miembro Frecuente
 
Registrado: 30 Dic 2010 15:14

Re: Escribir valor en celda dependiendo de una 3 celda

Notapor novaexcel » 14 Ene 2011 13:50

Gracias, ficoaex. te adjunto un excel con lo que queria hacer.
Como veras tambien queria utilizar la columna c para que me guardase los datos de la potencia segun el mes.
Demomento solo es una prueva si conseguimos que funcione lo usare para otros menesteres. Creia que seria mas liviano pero veo que se va ha complicar.

otra cosa que libro o donde podria conseguir informacion sobre esas famosas macros.
Es que he probado el programa que me has enviado y me da un error en la linea
ActiveCell.Offset(RowOffset:=Mes - 1).Value = Dato

gracias por el tiempo.
* Te recomendamos estos productos Excel: Manual de Macros | Manual de Funciones | Nuevas Funciones | ddTraDa
novaexcel
Miembro Frecuente
Miembro Frecuente
 
Registrado: 12 Ene 2011 20:00

Re: Escribir valor en celda dependiendo de una 3 celda

Notapor ficoaex » 14 Ene 2011 13:53

Espero poder ayudarte, pero se te olvido adjuntar el archivo.

Saludos...
* Te recomendamos estos productos Excel: Manual de Macros | Manual de Funciones | Nuevas Funciones | ddTraDa
ficoaex
Miembro Frecuente
Miembro Frecuente
 
Registrado: 30 Dic 2010 15:14

Re: Escribir valor en celda dependiendo de una 3 celda

Notapor novaexcel » 14 Ene 2011 15:54

Perdona, las prisas :mrgreen:
Libro1.xls
No tiene los permisos requeridos para ver los archivos adjuntos a este mensaje.
* Te recomendamos estos productos Excel: Manual de Macros | Manual de Funciones | Nuevas Funciones | ddTraDa
novaexcel
Miembro Frecuente
Miembro Frecuente
 
Registrado: 12 Ene 2011 20:00

Re: Escribir valor en celda dependiendo de una 3 celda

Notapor ficoaex » 14 Ene 2011 17:40

De verdad intente solucionarlo por fórmulas pero es algo complicado porque al final creo que los datos de KW y el % y otros corresponden a tal mes pero no son determinados por este.

Entonces corregi la macro, el problema se debía a que no encontraba mes al cual irse pero siempre que escribas el mes en H8 no habrá problema.

La macro sería ésta:

Sub p1()

Dim Mes, Dato, Potencia, Desplazar

Mes = Range("H8").Value
Dato = Range("A1").Value
Potencia = Range("K9").Value

Range("B1").Select

ActiveCell.Offset(RowOffset:=Mes - 1).Value = Dato
ActiveCell.Offset(RowOffset:=Mes - 1, ColumnOffset:=1).Value = Potencia

End Sub


Información sobre macros, en lo personal la he encontrado en foros como este, una página donde he aprendido bastante es http://www.jrgc.es

Saludos...
* Te recomendamos estos productos Excel: Manual de Macros | Manual de Funciones | Nuevas Funciones | ddTraDa
ficoaex
Miembro Frecuente
Miembro Frecuente
 
Registrado: 30 Dic 2010 15:14

Re: Escribir valor en celda dependiendo de una 3 celda

Notapor novaexcel » 14 Ene 2011 18:48

Gracias, lo he probado y funciona, tambien la he intentado modificar y casi funciona bien pero me escribe datos de vez en cuando en otras celdas
Libro3.xlsm

para activar la macro ctrl+a.

ahora mirare la paguina, y gracias
No tiene los permisos requeridos para ver los archivos adjuntos a este mensaje.
* Te recomendamos estos productos Excel: Manual de Macros | Manual de Funciones | Nuevas Funciones | ddTraDa
novaexcel
Miembro Frecuente
Miembro Frecuente
 
Registrado: 12 Ene 2011 20:00

Re: Escribir valor en celda dependiendo de una 3 celda

Notapor ficoaex » 14 Ene 2011 19:14

Voy a tratar de explicar la macro paso a paso, con mis propias palabras:

Dim Mes, Dato, Potencia, Desplazar
Le doy nombre a los datos que voy a utilizar para entenderlos mejor

Mes = Range("H8").Value
Es el valor del mes que está en H8, en tu ejemplo actualmente es 10.

Dato = Range("A1").Value
Este es el resultado de las operaciones realizadas.

Potencia = Range("K9").Value
Es el valor de los KW

Range("B1").Select
Selecciono B1 para partir desde allí, al ingreso de datos en las respectivas celdas

ActiveCell.Offset
Esto quiere decir, desplazamiento desde la celda activa

(RowOffset:=Mes - 1)
Para desplazar filas, si te acuerdas en tu ejemplo el valor actual es 10 le restamos 1 y da 9, como estamos en B1 y 9 filas abajo llega a B10 que es donde está octubre

.Value = Dato
El valor de B10 es igual al dato de A1.

Ya reunido es así:
ActiveCell.Offset(RowOffset:=Mes - 1).Value = Dato

ActiveCell.Offset(RowOffset:=Mes - 1, ColumnOffset:=1).Value = Potencia
Es igual que el anterior pero sirve para escribir la potencia, lo que tiene de diferente es ColumnOffset:=1 que es una columna a la derecha, osea C.

Y le escribimos el valor de los KW.


El Código que modificaste, lo lleva a otro lado porque tomas la potencia como base, actualmente es 22 y 22-1 = 21 y estamos en C1, esto nos envía a C22 y D22 que es donde te dejo los datos.


Espero que esta pequeña explicación te guíe un poco más.

Saludos...
* Te recomendamos estos productos Excel: Manual de Macros | Manual de Funciones | Nuevas Funciones | ddTraDa
ficoaex
Miembro Frecuente
Miembro Frecuente
 
Registrado: 30 Dic 2010 15:14

Re: Escribir valor en celda dependiendo de una 3 celda

Notapor novaexcel » 15 Ene 2011 03:36

Fabuloso, Gracias, por la ayuda.
Cuando lo probé me fallo algo creo que era que no designe bien para que se copiaran los valores en otras columnas.
Y me fallaba los valores en la columna c pero ahora he corregido eso y he colocado el código original que me escribiste, funciona de fabula.

Gracias.
* Te recomendamos estos productos Excel: Manual de Macros | Manual de Funciones | Nuevas Funciones | ddTraDa
novaexcel
Miembro Frecuente
Miembro Frecuente
 
Registrado: 12 Ene 2011 20:00

Re: Escribir valor en celda dependiendo de una 3 celda

Notapor karlozeta » 18 Ago 2012 23:29

hola ficoaex,

tengo una consulta que es similar a este tipo de ejemplo, mi consulta es la siguiente y se encuentra resumida en el presente adjunto
gracias en lo que me puedas colaborar
No tiene los permisos requeridos para ver los archivos adjuntos a este mensaje.
* Te recomendamos estos productos Excel: Manual de Macros | Manual de Funciones | Nuevas Funciones | ddTraDa
karlozeta
Miembro Nuevo
Miembro Nuevo
 
Registrado: 15 Nov 2011 12:26

Re: Escribir valor en celda dependiendo de una 3 celda

Notapor ficoaex » 20 Ago 2012 11:42

Que tal karlozeta.

Te adjunto una posible solución, solo toma en cuenta que los números no se pueden repetir.

Lo resolví por fórmula, cualquier duda lo vemos.

Saludos...
* Te recomendamos estos productos Excel: Manual de Macros | Manual de Funciones | Nuevas Funciones | ddTraDa
ficoaex
Miembro Frecuente
Miembro Frecuente
 
Registrado: 30 Dic 2010 15:14

Re: Escribir valor en celda dependiendo de una 3 celda

Notapor ficoaex » 20 Ago 2012 11:48

Creo que no se adjunto el archivo. He estado probando pero no sé porque no me deja.

Pero en resumen escribe la siguiente fórmula en A1: =INDICE(D:D,COINCIDIR(FILA(B1),C:C,0))

Esto lo copias hasta donde necesites. (Si te da error sustituye las comas "," por punto y coma ";")

Saludos...
* Te recomendamos estos productos Excel: Manual de Macros | Manual de Funciones | Nuevas Funciones | ddTraDa
ficoaex
Miembro Frecuente
Miembro Frecuente
 
Registrado: 30 Dic 2010 15:14

Re: Escribir valor en celda dependiendo de una 3 celda

Notapor karlozeta » 21 Ago 2012 19:18

Mil gracias ficoaex, eso era todo lo que necesitaba, la verdad es que lo habia hecho por medio de una macro pero era muy extensa y compleja y por supuesto con algunos errores. Pero en todo caso gracias....
* Te recomendamos estos productos Excel: Manual de Macros | Manual de Funciones | Nuevas Funciones | ddTraDa
karlozeta
Miembro Nuevo
Miembro Nuevo
 
Registrado: 15 Nov 2011 12:26


Compartir en:
     

  • Anuncio
Manual Excel avanzado

Volver a Otras Consultas

¿Quién está conectado?

Usuarios navegando por este Foro: Bing [Bot], Google [Bot] y 4 invitados