Foros del Web » Soporte técnico » Ofimática »

Error en macro de Excel

Estas en el tema de Error en macro de Excel en el foro de Ofimática en Foros del Web. Hola a todos, Necesito ayuda con respecto a la declaración de una variable en Visual Basic para una macro de excel, lo que pasa es ...
  #1 (permalink)  
Antiguo 04/12/2007, 16:27
Avatar de MOlgaI  
Fecha de Ingreso: diciembre-2007
Mensajes: 9
Antigüedad: 16 años, 5 meses
Puntos: 0
Error en macro de Excel

Hola a todos,

Necesito ayuda con respecto a la declaración de una variable en Visual Basic para una macro de excel, lo que pasa es de que necesito condicionar a una celda en base a su valor, yo estoy utilizando la sentencia de control Select case, en la cual indio que si la celda B2 tiene el valor 80% entonces le asigne a la celda A2 el valor 1030, segun yo tengo todo bien en mi código pero me da error en la declaración de la mi variable y no se que tipo de dato (integer, float, etc..) debo declarar para este caso
les envío mi código de la macro ojala alguien me pueda ayudar y entender.

Sub según_sea()



'declarar variables
Dim Porcentaje As Float
Dim Valor As Integer


'asignar valores a la celda

Porcentaje = Range("B2").Value

Select Case Porcentaje

Case "80%"
Valor = 1030

Case Else
Valor = 0
End Select

'asigna el valor obtenido segun la condicion
Range("A2").Value = Valor




End Sub

Tambien otra duda que tengo es ¿Como puedo asignar esta condicion a mas celdas ya que B2 no es la unica que deceo condicionar?

Saludos a todos y ayudenme por favor
  #2 (permalink)  
Antiguo 04/12/2007, 17:41
 
Fecha de Ingreso: julio-2006
Ubicación: Madrid
Mensajes: 943
Antigüedad: 17 años, 9 meses
Puntos: 56
Re: Error en macro de Excel

Yo probaría a declarar la variable como single, o sino, como double, pero single te debe valer.

Ah, por cierto, si el valor a evaluar es 80%, no lo pongas entre comillas, pues no es una cadena de caracteres, y es más, 80% no es valor de nada, creo. Deberías poner 0.8

Saludos, ya me contarás.
  #3 (permalink)  
Antiguo 05/12/2007, 02:48
Avatar de 3pies
Colaborador
 
Fecha de Ingreso: diciembre-2003
Ubicación: Desde una destilería
Mensajes: 2.584
Antigüedad: 20 años, 4 meses
Puntos: 144
Re: Error en macro de Excel

En lugar de esto:
Código:
Case "80%"
Pon esto otro:
Código:
Case 0.8
Salu2
  #4 (permalink)  
Antiguo 05/12/2007, 09:35
Avatar de MOlgaI  
Fecha de Ingreso: diciembre-2007
Mensajes: 9
Antigüedad: 16 años, 5 meses
Puntos: 0
Re: Error en macro de Excel

Cita:
Iniciado por jchuk Ver Mensaje
Yo probaría a declarar la variable como single, o sino, como double, pero single te debe valer.

Ah, por cierto, si el valor a evaluar es 80%, no lo pongas entre comillas, pues no es una cadena de caracteres, y es más, 80% no es valor de nada, creo. Deberías poner 0.8

Saludos, ya me contarás.
Muchísimas gracias a los dos si funciono así.

Solo que tengo otra duda ¿Como puedo hacer para que esta condición se aplique para mas celdas?
Saludos
  #5 (permalink)  
Antiguo 05/12/2007, 09:45
 
Fecha de Ingreso: julio-2006
Ubicación: Madrid
Mensajes: 943
Antigüedad: 17 años, 9 meses
Puntos: 56
Re: Error en macro de Excel

Pues justo antes del case else pon todas las sentencias que quieres que se vean afectadas por la condición del case.
  #6 (permalink)  
Antiguo 05/12/2007, 09:54
Avatar de MOlgaI  
Fecha de Ingreso: diciembre-2007
Mensajes: 9
Antigüedad: 16 años, 5 meses
Puntos: 0
Re: Error en macro de Excel

Ok deja probar.
Gracias ._.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 02:46.