Sie sind auf Seite 1von 5

Sub Fred()

Dim a As Range
Dim Texto_Procurado As Variant
Dim T As String
Dim aa As Integer
Dim b As Integer
Dim col_Texto_encontrado As Integer
aa = 251
b = 300
i_aux = 4337
For j = aa To b
If Range("H" & j).Value = "" Then
If Range("A" & j).Value = "FORNECIMENTO" Then
Range("F" & j) = Replace(Range("F" & j).Value, vbCrLf, " ")
Texto_Procurado = Split(Range("F" & j).Value, "ornecimento")

If Texto_Procurado(0) = "F" Then


T = Texto_Procurado(1)
Else
Texto_Procurado = Split(Range("F" & j).Value, "ornecimento")
If Texto_Procurado(0) = "f" Then
T = Texto_Procurado(1)
Else
Texto_Procurado = Split(Range("F" & j).Value, "ORNECIMEN
TO")
If Texto_Procurado(0) = "F" Then
T = Texto_Procurado(1)
Else
T = Range("F" & j).Value
End If
End If
End If
col_Texto_encontrado = 9
If Range("A" & i_aux).Value = "MONTAGEM" Then
If Range("H" & i_aux).Value = "" Then
Range("F" & i_aux) = Replace(Range("F" & i_aux).Valu
e, vbCrLf, " ")
Set a = Range("F" & i_aux, "F" & i_aux)
With a
On Error Resume Next
Set n = a.Find(What:=T)
If n Is Nothing Then
For i = 4337 To 8619
If Range("A" & i).Value = "MONTAGEM" Then
If Range("H" & i).Value = "" Then
Range("F" & i) = Replace(Range("F" & i).Value, vbCrL
f, " ")
Set a = Range("F" & i, "F" & i)
With a
On Error Resume Next
Set n = a.Find(What:=T)
If n Is Nothing Then
Else
If Range("C" & j).Value = Range("C" & i).Val
ue Then
If Range("D" & j).Value = Range("D" & i)
.Value Then
If Range("E" & j).Value = Range("E"
& i).Value Then
Range("H" & j) = "SIM"
Range("H" & i) = Range("B" & j).
Value
Range(ConvertToLetter(col_Texto_
encontrado) & j) = Range("B" & i).Value
col_Texto_encontrado = col_Texto
_encontrado + 1
i_aux = i + 1
End If
End If
End If
End If
End With
End If
End If
If i = 8619 Then
If Range("H" & j).Value = "" Then
Range("H" & j) = "NAO"
End If
End If
Next i

Else
If Range("C" & j).Value = Range("C" & i_aux)
.Value Then
If Range("D" & j).Value = Range("D" & i_
aux).Value Then
If Range("E" & j).Value = Range("E"
& i_aux).Value Then
Range("H" & j) = "SIM"
Range("H" & i_aux) = Range("B" &
j).Value
Range(ConvertToLetter(col_Texto_
encontrado) & j) = Range("B" & i_aux).Value
col_Texto_encontrado = col_Texto
_encontrado + 1
i_aux = i_aux + 1
End If
End If
End If
End If
End With
End If
Else
End If
End If
End If
Next j
End Sub

Function ConvertToLetter(iCol As Integer) As String


Dim iAlpha As Integer
Dim iRemainder As Integer
iAlpha = Int(iCol / 27)
iRemainder = iCol - (iAlpha * 26)
If iAlpha > 0 Then
ConvertToLetter = Chr(iAlpha + 64)
End If
If iRemainder > 0 Then
ConvertToLetter = ConvertToLetter & Chr(iRemainder + 64)
End If
End Function

Sub Fred()
Dim a As Range
Dim Texto_Procurado As Variant
Dim T As String
Dim aa As Integer
Dim b As Integer
Dim col_Texto_encontrado As Integer
aa = 680
b = 685
i_aux = 4337
For j = aa To b
If Range("H" & j).Value = "NAO" Then
If Range("A" & j).Value = "FORNECIMENTO" Then
Range("F" & j) = Replace(Range("F" & j).Value, vbCrLf, " ")
Texto_Procurado = Split(Range("F" & j).Value, "ornecimento")
If Texto_Procurado(0) = "F" Then
T = Texto_Procurado(1)
Else
Texto_Procurado = Split(Range("F" & j).Value, "ornecimento")
If Texto_Procurado(0) = "f" Then
T = Texto_Procurado(1)
Else
Texto_Procurado = Split(Range("F" & j).Value, "ORNECIMEN
TO")
If Texto_Procurado(0) = "F" Then
T = Texto_Procurado(1)
Else
T = Range("F" & j).Value
End If
End If
End If
col_Texto_encontrado = 9
For i = 4337 To 8619
If Range("A" & i).Value = "MONTAGEM" The
n
If Range("H" & i).Value = "" Then
Range("F" & i) = Replace(Range("
F" & i).Value, vbCrLf, " ")
Set a = Range("F" & i, "F" & i)
With a
On Error Resume Next
Set n = a.Find(What:=T)
If n Is Nothing Then

Else
Range("H" & j) = "PP
P"
Range(ConvertToLette
r(col_Texto_encontrado) & j) = Range("B" & i).Value
col_Texto_encontrado
= col_Texto_encontrado + 1
End If
End With
End If
End If
If i = 8619 Then
If Range("H" & j).Value = "" The
n
Range("H" & j) = "NAO"
End If
End If
Next i
End If
End If
Next j
End Sub

Function ConvertToLetter(iCol As Integer) As String


Dim iAlpha As Integer
Dim iRemainder As Integer
iAlpha = Int(iCol / 27)
iRemainder = iCol - (iAlpha * 26)
If iAlpha > 0 Then
ConvertToLetter = Chr(iAlpha + 64)
End If
If iRemainder > 0 Then
ConvertToLetter = ConvertToLetter & Chr(iRemainder + 64)
End If
End Function