Minimizar filas en dos hojas diferentes segun la misma condicion
publicado
Buenas, y ante todo gracias de antemano y disculpas si el tema que busco ya se habia tratado, pero no ha habido manera de encontra la solución.
Tengo un archivo Excel para controlar entradas y salidas de materiales: en una hoja tengo productos y en otra ("Stock"), tengo el stock, aparte de tener una de entradas y salidas claro.
Bien, lo que busco es que desde la hoja de Productos, y a traves de un formulario, pueda minimizar la fila el producto que yo introduzca en TextBox1 en las dos hojas: Productos y Stock.
He de decir, que consigo hacer que se minimize en la hoja productos, pero no consigo ni siquiera que en Stock me llegue a escribir un simple "hola" en una celda cualquiera. El codigo que uso es el que les indico... Lamento no poder subir el archivo entero, pero por motivos de empresa no me es imposible...
Private Sub CommandButton2_Click()
Dim ctr As Control
Set RANGO = Range("C:C").Find(What:=TextBox1, _
LookAt:=xlWhole, LookIn:=xlValues)
If RANGO Is Nothing Then
MsgBox "Aun no buscas ningun dato", vbOKOnly + vbInformation, "AVISO"
TextBox1.SetFocus
Exit Sub
End If
If TextBox2 = "" Or TextBox3 = "" Or TextBox4 = "" Then
MsgBox "No dejes ningun campo en blanco", vbOKOnly + vbInformation, "AVISO"
Exit Sub
End If
Range("C" & RANGO.Row) = TextBox2
Range("D" & RANGO.Row) = TextBox3
Range("E" & RANGO.Row) = Val(TextBox4)
Range("G" & RANGO.Row).NumberFormat = "#,##0.00"
For Each ctr In Me.Controls
If TypeOf ctr Is MSForms.TextBox Then
ctr = ""
End If
Next ctr
TextBox1.SetFocus
Set ctr = Nothing
Set RANGO = Nothing
End Sub
Private Sub CommandButton3_Click()
Dim strfila$, ctr As Control
If TextBox1 = "" Or TextBox2 = "" Or TextBox3 = "" Or TextBox4 = "" Then
MsgBox "No dejes ningun campo en blanco", vbOKOnly + vbInformation, "AVISO"
TextBox1.SetFocus
Exit Sub
End If
Set RANGO = Range("C:C").Find(What:=TextBox1, _
LookAt:=xlWhole, LookIn:=xlValues)
If Not RANGO Is Nothing Then
MsgBox "El PRODUCTO ya existe", vbOKOnly + vbInformation, "AVISO"
Buenas, y ante todo gracias de antemano y disculpas si el tema que busco ya se habia tratado, pero no ha habido manera de encontra la solución.
Tengo un archivo Excel para controlar entradas y salidas de materiales: en una hoja tengo productos y en otra ("Stock"), tengo el stock, aparte de tener una de entradas y salidas claro.
Bien, lo que busco es que desde la hoja de Productos, y a traves de un formulario, pueda minimizar la fila el producto que yo introduzca en TextBox1 en las dos hojas: Productos y Stock.
He de decir, que consigo hacer que se minimize en la hoja productos, pero no consigo ni siquiera que en Stock me llegue a escribir un simple "hola" en una celda cualquiera. El codigo que uso es el que les indico... Lamento no poder subir el archivo entero, pero por motivos de empresa no me es imposible...
Private Sub CommandButton2_Click()
Dim ctr As Control
Set RANGO = Range("C:C").Find(What:=TextBox1, _
LookAt:=xlWhole, LookIn:=xlValues)
If RANGO Is Nothing Then
MsgBox "Aun no buscas ningun dato", vbOKOnly + vbInformation, "AVISO"
TextBox1.SetFocus
Exit Sub
End If
If TextBox2 = "" Or TextBox3 = "" Or TextBox4 = "" Then
MsgBox "No dejes ningun campo en blanco", vbOKOnly + vbInformation, "AVISO"
Exit Sub
End If
Range("C" & RANGO.Row) = TextBox2
Range("D" & RANGO.Row) = TextBox3
Range("E" & RANGO.Row) = Val(TextBox4)
Range("G" & RANGO.Row).NumberFormat = "#,##0.00"
For Each ctr In Me.Controls
If TypeOf ctr Is MSForms.TextBox Then
ctr = ""
End If
Next ctr
TextBox1.SetFocus
Set ctr = Nothing
Set RANGO = Nothing
End Sub
Private Sub CommandButton3_Click()
Dim strfila$, ctr As Control
If TextBox1 = "" Or TextBox2 = "" Or TextBox3 = "" Or TextBox4 = "" Then
MsgBox "No dejes ningun campo en blanco", vbOKOnly + vbInformation, "AVISO"
TextBox1.SetFocus
Exit Sub
End If
Set RANGO = Range("C:C").Find(What:=TextBox1, _
LookAt:=xlWhole, LookIn:=xlValues)
If Not RANGO Is Nothing Then
MsgBox "El PRODUCTO ya existe", vbOKOnly + vbInformation, "AVISO"
TextBox1.SetFocus
Exit Sub
End If
UltimaFila = Range("C65536").End(xlUp).Row
UltimaFila = UltimaFila + 1
Range("C" & UltimaFila) = TextBox1
Range("D" & UltimaFila) = TextBox2
Range("E" & UltimaFila) = TextBox3
Range("G" & UltimaFila) = Val(TextBox4)
Range("G" & UltimaFila).NumberFormat = " #,##0.00"
For Each ctr In Me.Controls
If TypeOf ctr Is MSForms.TextBox Then
ctr = ""
End If
Next ctr
Range("A" & strfila$ & "
" & strfila$).HorizontalAlignment = xlCenter
TextBox1.SetFocus
End Sub
Private Sub CommandButton4_Click()
Set RANGO = Range("C:C").Find(What:=TextBox1, _
LookAt:=xlWhole, LookIn:=xlValues)
Dim respuesta As Integer, ctr As Control
If RANGO Is Nothing Then
MsgBox "Aun no buscas ningun dato", vbOKOnly + vbInformation, "AVISO"
TextBox1.SetFocus
Exit Sub
End If
respuesta = MsgBox("¿Estas seguro de eliminar el registro elegido?", vbCritical + vbOKCancel, "AVISO")
If respuesta = vbOK Then
Cells(RANGO.Row, RANGO.Column).EntireRow.Select
Selection.RowHeight = 3
For Each ctr In Me.Controls
If TypeOf ctr Is MSForms.TextBox Then
ctr = ""
End If
Next ctr
TextBox1.SetFocus
Exit Sub
End If
MsgBox "Operacion cancelada", vbOKOnly + vbInformation, "AVISO"
For Each ctr In Me.Controls
If TypeOf ctr Is MSForms.TextBox Then
ctr = ""
End If
Next ctr
TextBox1.SetFocus
End Sub