Problema con OptionButtons en excel
Publicado por Daniel Domínguez (4 intervenciones) el 08/11/2007 17:56:28
Hola tengo un problemilla con visual basic en Excel. El caso es que tengo una hoja en la que tengo 3 optionbuttons y quiero que en función del valor seleccionado se modifiquen las celdas de la tabla.
Para ello me he creado la siguiente función
Option Explicit
Public Function tipoP(cualquiera As Integer) As String
If Sheets.Item("Hoja1").OptionButton1.Value = True Then
tipoP = "OFICINAS"
ElseIf Sheets.Item("Hoja1").OptionButton2.Value = True Then
tipoP = "FFVV"
ElseIf Sheets.Item("Hoja1").OptionButton3.Value = True Then
tipoP = "TOTAL"
End If
End Function
Y en los eventos click de los botones he puesto lo siguiente:
Option Explicit
Private Sub OptionButton1_Click()
Sheets.Item("Hoja1").EnableCalculation = True
Sheets.Item("Hoja1").Calculate
End Sub
Private Sub OptionButton2_Click()
Sheets.Item("Hoja1").EnableCalculation = True
Sheets.Item("Hoja1").Calculate
End Sub
Private Sub OptionButton3_Click()
Sheets.Item("Hoja1").EnableCalculation = True
Sheets.Item("Hoja1").Calculate
End Sub
El problema que tengo es que no consigo que me funcione, los datos de las fórmulas que tengo en el excel (por ejemplo SUMAR.SI(A1:A10;tipoP(0);C1:C10)) no se me actualizan cuando cambio los botones.
Me parece que me falta algo. ¿Alquien me puede ayudar?
Muchas gracias por adelantado
Para ello me he creado la siguiente función
Option Explicit
Public Function tipoP(cualquiera As Integer) As String
If Sheets.Item("Hoja1").OptionButton1.Value = True Then
tipoP = "OFICINAS"
ElseIf Sheets.Item("Hoja1").OptionButton2.Value = True Then
tipoP = "FFVV"
ElseIf Sheets.Item("Hoja1").OptionButton3.Value = True Then
tipoP = "TOTAL"
End If
End Function
Y en los eventos click de los botones he puesto lo siguiente:
Option Explicit
Private Sub OptionButton1_Click()
Sheets.Item("Hoja1").EnableCalculation = True
Sheets.Item("Hoja1").Calculate
End Sub
Private Sub OptionButton2_Click()
Sheets.Item("Hoja1").EnableCalculation = True
Sheets.Item("Hoja1").Calculate
End Sub
Private Sub OptionButton3_Click()
Sheets.Item("Hoja1").EnableCalculation = True
Sheets.Item("Hoja1").Calculate
End Sub
El problema que tengo es que no consigo que me funcione, los datos de las fórmulas que tengo en el excel (por ejemplo SUMAR.SI(A1:A10;tipoP(0);C1:C10)) no se me actualizan cuando cambio los botones.
Me parece que me falta algo. ¿Alquien me puede ayudar?
Muchas gracias por adelantado
Valora esta pregunta


0