Excel - obtener el valor que yo quiera en una celda independiente

 
Vista:

obtener el valor que yo quiera en una celda independiente

Publicado por ALEJANDRO (3 intervenciones) el 10/01/2019 21:25:52
buenas tardes

necesito alguna forma de poder obtener el valor que yo quiera en una celda independiente

es decir, yo estoy en una hoja de calculo, donde necesito tomar valores de otra hoja de calculo, pero el problema que tengo, es que, los valores que necesito estan con una diferencia de 11 celdas, por lo que, en estos momentos tengo que ponerlos uno a uno

espero me entiendan

ejemplo demostrativo:

primer valor de la hoja A1
el otro valor seria A12
y asi respectivamente

pero en la hoja de calculo que estoy trabajando los necesito consecutivo

es decir:

necesito que A1 tome el valor de A1 de la otra hoja de calculo
y que A2 tome el valor de A12
y que A3 tome el valor de A23

y asi consecutivamente

saludos

y en espera de respuesta
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Antoni Masana
Val: 4.908
Oro
Ha mantenido su posición en Excel (en relación al último mes)
Gráfica de Excel

obtener el valor que yo quiera en una celda independiente

Publicado por Antoni Masana (2481 intervenciones) el 11/01/2019 08:06:38
Básicamente en problema es la secuencia.

En la hoja de cálculo donde va la formula la secuencia es de 1, es decir A1, A2, A3, A4, etc
En la hoja de cálculo de donde se toman los datos la secuencia es de 11, es decir A1, A12, A23, A34, etc.

En este caso puedes aplicar esta fórmula con alguna modificación:

1
2
3
4
5
6
7
8
9
Sub Macro1()
    Dim Fila As Integer, Dest As Integer
    Dest = 1
    For Fila = 1 To 5
        Range("A" & Fila).Select
        ActiveCell.FormulaR1C1 = "=[Libro1.xlsx]Hoja1!R" & Dest & "C1"
        Dest = Dest + 11
    Next
End Sub

Rellena las primeras 5 filas, A1, A2, A3, A3, A5 y toma los datos de las celdas A1, A12, A23, A34, A45 respectivamente.

Explico la formula: "=[Libro1.xlsx]Hoja1!R" & Dest & "C1"

Donde:
1
2
3
4
Libro1.xlsx - Es el libro
Hoja1       - Es la hoja
"R" & Dest  - Es la fila
"C1"        - Es la columna y en este caso la A

Saludos.
\\//_
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

obtener el valor que yo quiera en una celda independiente

Publicado por ALEJANDRO (3 intervenciones) el 11/01/2019 14:37:12
buenos dias

me podria explicar mejor, no entendi cual es la formula que debo utilizar

y como accedo a esto

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
Sub Macro1()
 
    Dim Fila As Integer, Dest As Integer
 
    Dest = 1
 
    For Fila = 1 To 5
 
        Range("A" & Fila).Select
 
        ActiveCell.FormulaR1C1 = "=[Libro1.xlsx]Hoja1!R" & Dest & "C1"
 
        Dest = Dest + 11
 
    Next
 
End Sub
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Antoni Masana
Val: 4.908
Oro
Ha mantenido su posición en Excel (en relación al último mes)
Gráfica de Excel

obtener el valor que yo quiera en una celda independiente

Publicado por Antoni Masana (2481 intervenciones) el 11/01/2019 15:27:33
No me he explicado bien, mejor dicho me he explicado fatal.

No es una formula, es una macro para crear formulas.

El problema que he visto con la formula que sigue una secuencia cuando es uno a uno, creas la primera formula (con valores relativos, es decir sin el símbolo $) la secuencia sigue bien, pero si en A1 toma C1, en A2 toma C3 y en A3 toma C5, el arrastre ya no funciona.

Y entonces queda dos alternativas,hacer una macro si hay una secuencia o hacerlo a mano. Lo que he puesto en el post anterior es una macro de una sola ejecución, una vez ejecutada ya se puede borrar por que ya no tiene ninguna utilidad.

Y ¿Que hace la MACRO? Poner formulas.

1
2
3
4
5
6
7
8
9
Sub Macro1()
    Dim Fila As Integer, Dest As Integer
    Dest = 1
    For Fila = 1 To 5
        Range("A" & Fila).Select
        ActiveCell.FormulaR1C1 = "=[Libro1.xlsx]Hoja1!R" & Dest & "C3"
        Dest = Dest + 11
    Next
End Sub

En este caso pone en la hoja activa una formula en la columna "A" (RANGE("A") empezando en la fila 1 (FILA), que toma los datos de una fila 1 (Dest) de la columna "C" (C3) de la hoja Hoja1 del libro de excel LIBRO1.xlsx.

La siguiente formula la pone en A2 y toma el valor C12.
La siguiente formula la pone en A3 y toma el valor C23.
La siguiente formula la pone en A4 y toma el valor C34.
La siguiente formula la pone en A5 y toma el valor C45.

En resumen es una macro para poner formulas.

Como puedes adaptarla:

A.- Supongamos que la formula ha de ir en la columna D
B.- Entre las filas 10 y 100
C.- El libro de donde tiene que leer se llama Presupuesta 2018
D.- La hoja del libro se llama Memoria
E.- los datos que tiene que leer empiezan en la fila 5 y salta cada 13 líneas
F.- y están en la columna G (G es la columna 7=C7)

1
2
3
4
5
6
7
8
9
Sub Macro1()
    Dim Fila As Integer, Dest As Integer
    Dest = 5                                                                  ' E - Desde
    For Fila = 10 To 100                                                      ' B
        Range("D" & Fila).Select                                              ' A
        ActiveCell.FormulaR1C1 = "=[Presupuesta 2018]Memoria!R" & Dest & "C7" ' C - D - F
        Dest = Dest + 13                                                      ' E - Salto
    Next
End Sub

Espero que con esta explicación quede más claro lo que te envío y lo puedas aplicar mejor.

Saludos.
\\//_
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

obtener el valor que yo quiera en una celda independiente

Publicado por ALEJANDRO (3 intervenciones) el 11/01/2019 15:41:48
puedes mandarmelo en un ejemplo con un excel

pues no se como proceder a hacer una macro

y no se como proceder a hacer lo que usted me dice

se esta explicando muy bien, y lo entiendo lo que no se como0 hacerlo en el excel

porque nunca he trabajado con macro

saludos

y disculpe las molestias
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Antoni Masana
Val: 4.908
Oro
Ha mantenido su posición en Excel (en relación al último mes)
Gráfica de Excel

obtener el valor que yo quiera en una celda independiente

Publicado por Antoni Masana (2481 intervenciones) el 14/01/2019 07:17:42
Debe ir a la pestaña Vista, icono Macros, cuando abre la ventana escribe un nombre de la macro por ejemplo Macro1 y pulsa el botón Crear

Se abrirá una ventana con el texto en la cabecera "Microsoft Visual Basic para Aplicaciones - ..." con el siguiente texto:

1
2
3
4
5
Option Explicit
 
Sub Macro1()
 
End Sub

Reemplaza el texto de las tres últimas líneas por el código que te envíe y cierra la ventana, ahora ya puedes ejecutar la macro.

Creo que siguiendo estos pasos sera más fácil poner la macro en tu libro.
Si aun y asi no sabes como modificar la MACRO para poner correctamente las fórmulas la única solución que se me ocurre es que me envies los libros.

Cuando guardes el libro debes hacerlo en formato XLSM para conservarlas, en caso de guardarlo XLSX se perderán pero te pregunta antes de guardar si estas seguro.

Saludos.
\\//_
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar