Duda de Visual basic en excel
Presionar alt+f11 cuando abran el archivo en el libro de excel
Quiero programar en el editor visual del excel para que compare ciertas cadenas que tengo en una columna, pe:
C1 C2 C3 C4
Cod Tipo Cod Tipo Final
1 Proceso 1 Proces
1 Terminado 2 Proceso
1 Proceso
2 Proceso
2 Proceso
Te explico tengo en la columna 1 un montón de celdas con códigos, algunos se repiten, pero no encuentro la forma de que acumule todos estos y solo los resuma en el mismo código pero en la C3 para que me de "como quien dice " un resumen de cada código.
Y el problema más grande lo tengo para la C4 ya que como se darán cuenta algunos tiene distintos tipo, la lógica es así si es que hay algún "en proceso " y otro del mismo código tiene "terminado" pues proceso debe ir en Código Final en el C4
Intente de muchas maneras para poder obtener lo que quiero pero ya me estoy volviendo loco.
Agradece mucho a los que me puedan ayudar
Ahí en el archivo adjunto esta maso la lógica del programa pero no se porque no me sale.
Muchas gracias.
Esto fue lo que intenté:
Sub Estado()
Dim i As Integer
Dim valor As String
Dim k As String
i = 2
j = 2
Do While Hoja1.Cells(i, 1) <> ""
Do While Hoja1.Cells(j, 1) = Hoja1.Cells(j + 1, 1)
k = valor
If Hoja1.Cells(j, 2) = Hoja1.Cells(j + 1, 2) Then
valor = Hoja1.Cells(j, 2)
k = Hoja1.Cells(j, 2)
Else
If Hoja1.Cells(j, 2) = "pr" And Hoja1.Cells(j + 1, 2) = "te" Then
valor = "pr"
k = " pr"
End If
If Hoja1.Cells(j, 2) = "pr" And Hoja1.Cells(j + 1, 2) = "ca" Then
valor = "pe"
k = "pe"
End If
If Hoja1.Cells(j, 2) = "te" And Hoja1.Cells(j + 1, 2) = "pr" Then
valor = "pr"
k = "pr"
End If
If Hoja1.Cells(j, 2) = "te" And Hoja1.Cells(j + 1, 2) = "ca" Then
valor = "te"
k = "te"
End If
If Hoja1.Cells(j, 2) = "ca" And Hoja1.Cells(j + 1, 2) = "te" Then
valor = "te"
k = "te"
End If
If Hoja1.Cells(j, 2) = "ca" And Hoja1.Cells(j + 1, 2) = "pe" Then
valor = "pr"
k = "pr"
End If
End If
j = j + 1
Loop
Hoja1.Cells(i, 3) = valor
i = i + 1
Loop
End Sub
Quiero programar en el editor visual del excel para que compare ciertas cadenas que tengo en una columna, pe:
C1 C2 C3 C4
Cod Tipo Cod Tipo Final
1 Proceso 1 Proces
1 Terminado 2 Proceso
1 Proceso
2 Proceso
2 Proceso
Te explico tengo en la columna 1 un montón de celdas con códigos, algunos se repiten, pero no encuentro la forma de que acumule todos estos y solo los resuma en el mismo código pero en la C3 para que me de "como quien dice " un resumen de cada código.
Y el problema más grande lo tengo para la C4 ya que como se darán cuenta algunos tiene distintos tipo, la lógica es así si es que hay algún "en proceso " y otro del mismo código tiene "terminado" pues proceso debe ir en Código Final en el C4
Intente de muchas maneras para poder obtener lo que quiero pero ya me estoy volviendo loco.
Agradece mucho a los que me puedan ayudar
Ahí en el archivo adjunto esta maso la lógica del programa pero no se porque no me sale.
Muchas gracias.
Esto fue lo que intenté:
Sub Estado()
Dim i As Integer
Dim valor As String
Dim k As String
i = 2
j = 2
Do While Hoja1.Cells(i, 1) <> ""
Do While Hoja1.Cells(j, 1) = Hoja1.Cells(j + 1, 1)
k = valor
If Hoja1.Cells(j, 2) = Hoja1.Cells(j + 1, 2) Then
valor = Hoja1.Cells(j, 2)
k = Hoja1.Cells(j, 2)
Else
If Hoja1.Cells(j, 2) = "pr" And Hoja1.Cells(j + 1, 2) = "te" Then
valor = "pr"
k = " pr"
End If
If Hoja1.Cells(j, 2) = "pr" And Hoja1.Cells(j + 1, 2) = "ca" Then
valor = "pe"
k = "pe"
End If
If Hoja1.Cells(j, 2) = "te" And Hoja1.Cells(j + 1, 2) = "pr" Then
valor = "pr"
k = "pr"
End If
If Hoja1.Cells(j, 2) = "te" And Hoja1.Cells(j + 1, 2) = "ca" Then
valor = "te"
k = "te"
End If
If Hoja1.Cells(j, 2) = "ca" And Hoja1.Cells(j + 1, 2) = "te" Then
valor = "te"
k = "te"
End If
If Hoja1.Cells(j, 2) = "ca" And Hoja1.Cells(j + 1, 2) = "pe" Then
valor = "pr"
k = "pr"
End If
End If
j = j + 1
Loop
Hoja1.Cells(i, 3) = valor
i = i + 1
Loop
End Sub
{"Lat":-13.9214253044313,"Lng":-56.2468457221985}
1 Respuesta
Respuesta de cepuentes
1