Visual Basic - IF "HOLA" = "HOLA" son datos diferentes?

Life is soft - evento anual de software empresarial
 
Vista:
Imágen de perfil de Damian

IF "HOLA" = "HOLA" son datos diferentes?

Publicado por Damian (5 intervenciones) el 30/01/2015 17:34:38
Buenas tardes.... Estoy volviendome loco con una sentencia.
Lo que me sucede es que dos datos diferentes en una condicion IF me lo toma como igual....
Alguien me podria Ayudar?

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
Private Sub UserForm_Initialize()
Application.ScreenUpdating = False
ScrTercero = ""
PasTercero = ""
PPter = ""
PasScrap = ""
FechaIn = ""
Dim NºMovi As Range
Set NºMovi = Sheets("Base Movimientos").Range("A:A")
Sheets("Base Movimientos").Visible = True
Sheets("Base Movimientos").Select
[A2].Select
TextBox1 = Usuario
TextBox2 = Format(Application.Count(NºMovi) + 1, "0000#")
TextBox4 = Format(Now, "dd/mm/yyyy")
While ActiveCell <> ""
If ActiveCell.Offset(0, 10) = Usuario And ActiveCell.Offset(0, 9) <= Date And ActiveCell.Offset(0, 4) <> "" And ActiveCell.Offset(0, 11) = "En Movimiento" Then
ListBox1.AddItem Format(ActiveCell, "00000#")
ActiveCell.Offset(1).Select
Else
ActiveCell.Offset(1).Select
End If
Wend
[A2].Select
While ActiveCell <> ""
If ActiveCell.Offset(0, 2) = Usuario And ActiveCell.Offset(0, 4) <> "" Then
ElseIf ActiveCell.Offset(0, 11) = "Autorizado" Or ActiveCell.Offset(0, 11) = "Autorizado a Distancia" Then
ListBox2.AddItem Format(ActiveCell, "00000#")
ActiveCell.Offset(1).Select
Else
ActiveCell.Offset(1).Select
End If
Wend
With Movi.ComboBox1
.AddItem "Mantenimiento (Ciudadela)"
.AddItem "Mantenimiento (Dreyfus)"
.AddItem "Deposito 5 (Oeste Logistic)"
.AddItem "Deposito 2 (Dreyfus)"
.AddItem "Silicon AID_Ciu"
.AddItem "Silicon AID_Drey"
.AddItem "Silicon AID_Cerr"
.AddItem "Deposito New LAB"
End With
With Movi.ComboBox2
.AddItem "Panessa Marcelo"
.AddItem "Lisei Alejandro"
End With
CheckBox2.Enabled = False
CheckBox3.Enabled = False
ComboBox2.Enabled = False
Sheets("Base Movimientos").Visible = False
End Sub

Lo que esta en negrita es el IF que no me esta funcionando ya que los datos que condicionan son totalmente diferentes y el IF lo toma como igual.

Gracias.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
sin imagen de perfil
Val: 6
Ha disminuido su posición en 9 puestos en Visual Basic (en relación al último mes)
Gráfica de Visual Basic

IF "HOLA" = "HOLA" son datos diferentes?

Publicado por Megamind (120 intervenciones) el 30/01/2015 18:12:27
Por lo que veo en la pregunta esta claro que son iguales

No tanto la condición en negrita, ya que no sabemos si (0,2) es igual a Usuario, incluyendo posibles espacios en blanco, y además que (0,4) no tenga ningún espacio en blanco
O si que coincide todo?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Damian

IF "HOLA" = "HOLA" son datos diferentes?

Publicado por Damian (5 intervenciones) el 30/01/2015 18:33:00
Gracias por el aporte, claramente faltaron datos por especificar, pero acabo de encontrar el error.
la problematica estaba dada en otro sector de la macro.

"ActiveCell.Offset(0, 2) = Usuario" son exactamente iguales
"ActiveCell.Offset(0, 4) <> "" " es una condicion verdadera.

en un principio el If estaba escrito de la siguiente manera...

If ActiveCell.Offset(0, 2) = Usuario And ActiveCell.Offset(0, 4) <> "" and ActiveCell.Offset(0, 11) = "Autorizado" Or ActiveCell.Offset(0, 11) = "Autorizado a Distancia" Then

es esto lo que me estaba generando la problematica.
lo he resuelto desdoblando los if de la siguiente manera para que cada uno actue con una sola condicion.

If ActiveCell.Offset(0, 2) = Usuario And ActiveCell.Offset(0, 4) <> "" Then
If ActiveCell.Offset(0, 11) = "Autorizado" Or ActiveCell.Offset(0, 11) = "Autorizado a Distancia" Then

La condicion OR en la primera linea del IF me llevaba a dar como valida todas las anteriores condiciones.

desde ya muchas gracias por la preocupacion.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 6
Ha disminuido su posición en 9 puestos en Visual Basic (en relación al último mes)
Gráfica de Visual Basic

IF "HOLA" = "HOLA" son datos diferentes?

Publicado por Megamind (120 intervenciones) el 30/01/2015 18:46:29
Pues me alegro de que lo solucionaras
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar