mailmaster
New Member
- Joined
- Jun 13, 2010
- Messages
- 14
Ante todo, agradecer la atencion que se me preste e indicar que esta misma pregunta en mi mejor ingles posible esta posteada en el foro general.
Tengo una funcion y un procediminto en un modulo:
La funcion comprueba si hay una formula en una celda:
y el procedimiento establece el formato condicional al rango:
Pues bien, cuando trato de trazar la ejecucion, el excel se pierde, pero no da error que me pueda orientar, ni se cuelga, simplemente se detiene (detiene:desaparece la linea amarilla que marca el traceo de la ejecucion y esta no continua). Esto ocurre tras la ejecucion de la linea
, independientemente de si pongo el
o no. Ademas, si despues voy al rango y manualmente reviso el formato condicional de las celdas del rango, estas tienen la condicion bien puesta pero el formato esta sin asignar.
Intuyo que pueda ser un error de idioma o de traduccion de formato de direcciones A1 a R1C1 pero no se ni por que ni como solucionarlo.
La posible solucion de asignar con otra macro el formato tras usar esta para la condicion no es asumible puesto que el hilo de ejecucion se pierde de lo que puede derivar un comportamiento erratico.
Como no hay error que me pueda orientar, ando perdido.
Muchas gracias.
Tengo una funcion y un procediminto en un modulo:
La funcion comprueba si hay una formula en una celda:
Code:
Function NoEsFormula(rRango As Range) As Boolean
NoEsFormula = True
If rRango.HasFormula = True Then
NoEsFormula = False
End If
End Function
Code:
Sub marcaSinformulas(rRango As Range)
Dim miCondicion As FormatCondition
Dim sPrimeraCelda As String
Dim sCondicion As String
Dim sCondicionR1C1 As String
Dim sFormulaAbsuluta As String
Dim rCelda As Range
rRango.FormatConditions.Delete
sPrimeraCelda = rRango.Cells(1, 1).Address
sPrimeraCelda = Replace(sPrimeraCelda, "$", "")
sCondicion = "=NoEsFormula(" & sPrimeraCelda & ")"
'sCondicion = "=NoEsFormula(RC[-3])"
On Error Resume Next
rRango.FormatConditions.Add(Type:=xlExpression, Formula1:=sCondicion).Interior.ColorIndex = 36
End Sub
Code:
rRango.FormatConditions.Add(Type:=xlExpression, Formula1:=sCondicion).Interior.ColorIndex = 36
Code:
On Error Resume Next
Intuyo que pueda ser un error de idioma o de traduccion de formato de direcciones A1 a R1C1 pero no se ni por que ni como solucionarlo.
La posible solucion de asignar con otra macro el formato tras usar esta para la condicion no es asumible puesto que el hilo de ejecucion se pierde de lo que puede derivar un comportamiento erratico.
Como no hay error que me pueda orientar, ando perdido.
Muchas gracias.