Cambiar valor sin importar lugar

Saludos

A ver si es posible, tengo una hoja con un listado de productos en el rango de columna A2:A10 e igual tengo la cantidad de cada producto en la columna B2:B10.

Mi pregunta es si puedo controlar la cantidad de cada producto desde otra hoja, es decir, desde un listado de salidas diarias sin importar la fila donde me encuentre.

Ejemplo: si en la hoja1 celda A3 dice "Tomate" y en la celda B3 tengo 3

En la hoja2 celda A10 escribo "Tomate" y en la celda B10 escribo 1 que se modifique el valor en hoja1 y me ponga en B3 un 2 y si estoy en el rango 20 de celda me haga lo mismo, es decir, que no importe el numero de celda en la hoja2 en el que este siempre se modifiquen datos especifico de la hoja1

1 respuesta

Respuesta
1

Como estás si se puede con while.. wend.. puedes hacerlo por ejemplo el código siguiente realiza un bucle en busca del dato en la hoja 1

Sub busca()
Dim fila As Integer
fila = 2
While Sheets("hoja1").Cells(fila, 1) <> Empty
dato = ActiveCell.Offset(0, -1)
If Sheets("hoja1").Cells(fila, 1) = dato Then
Sheets("hoja1").Cells(fila, 2) = ActiveCell
End If
fila = fila + 1
Wend
End Sub

En www.programarexcel.blogspot.com encontrarás una serie de ejemplos que podrás descargar y adaptar a tu proyecto

Hola

Gracias por la pronta repuesta pero lo que quiero es por ejemplo al escribir "Tomate" en cualquiera de la celda A de la hoja2 y una cantidad en la celda contigua B de esa misma hoja quiero que se modifique el valor de la celda B contigua a la cela A que dice "Tomate" y que esta en una celda especifica de la hoja1, es decir, que se le sume el valor.

HOJA1

A1= Tomate B1=2

Si en hoja 2 hago lo siguiente

A15=Tomate B15=5

Que en la hoja 1 el valor de B1 sea 7

Gracias por su tiempo y espero me entienda lo que quiero

En tu enunciado en ninguna parte dice que se tiene que sumar, deberías haber empezado describiendo exactamente que es lo que necesitas, igualmente no es difícil lo que pides

Cambia esta parte del código

Sheets("hoja1").Cells(fila, 2) = ActiveCell

por esta

Sheets("hoja1").Cells(fila, 2) = Sheets("hoja1").Cells(fila, 2) + ActiveCell

No funciona y otra cosa no puede hacer la búsqueda en la hoja1 con relación a la variable fila ya que esta tiene el valor 2, lo que quiero es que busque la intentar de la celda "A" que contiene el nombre del producto a partir del nombre que yo coloco en la hoja2 y de hay es que mande a modificar el valor de la celda B

No funciona, ¿puede ser por varias razones? La adaptaste a tu hoja es decir yo aca tomo que la hoja se llama hoja1 tu debes poner en nombre de tu hoja, si eso no anda cual es el error que te larga, y más fácil enviame el archivo y te lo veo, súbelo desde www.programarexcel.blogspot.com contactos

Ok enviado y gracias, funciona en parte ya y le envíe una pequeña información

Gracias

Agrega este código tiene una modificaciones

Sub busca()
Dim fila As Integer

fila = 2

While Sheets("hoja1").Cells(fila, 1) <> Empty

dato = ActiveCell.Offset(-1, -1)

dato1 = ActiveCell.Offset(-1, 0)

If Sheets("hoja1").Cells(fila, 1) = dato Then

Sheets("hoja1").Cells(fila, 2) = Sheets("hoja1").Cells(fila, 2) + dato1

stock = Sheets("hoja1").Cells(fila, 2)

MsgBox ("Stock actual es " & stock), vbInformation, "AVISO"

End If

fila = fila + 1

Wend

End Sub

Esto hace exactamente lo que tu quieres.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas