MACRO ACHAR PALAVRA NA CELULA

MATOSO2010 04/12/2012 11:14:08
#415387
Prezados, gostaria da ajuda de vocês, como sei menos que o básico de vb, não estou conseguindo, tenho a seguinte macro, ela funciona muito bem, mas, gostaria de deixar ela mais enchuta, onde ínsere a fórmula que procura determinada palavra na célula e retorna outra
(ActiveCell.FormulaR1C1 = _
[Ô]=IF(ISNUMBER(FIND([Ô][Ô]NIQ[Ô][Ô],RC[-1])),[Ô][Ô]NIQUELAÇÃO[Ô][Ô],IF(ISNUMBER(FIND([Ô][Ô]FORNO[Ô][Ô],RC[-1])),[Ô][Ô]FORNO[Ô][Ô],IF(ISNUMBER(FIND([Ô][Ô]CLAS[Ô][Ô],RC[-1])),[Ô][Ô]CLASSIFICAÇÃO[Ô][Ô],IF(ISNUMBER(FIND([Ô][Ô]PIST[Ô][Ô],RC[-1])),[Ô][Ô]PISTOLA[Ô][Ô],[Ô][Ô]ACA[Ô][Ô]))))[Ô]
Selection.Copy
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False)

, gostaria de verificar como montar isso com .find.
Se puderem me dar uma luz

Sub Fórmula1()
Application.ScreenUpdating = False
Columns([Ô]C:C[Ô]).Select
Selection.Insert Shift:=xlToRight, CopyOrigin:=xlFormatFromLeftOrAbove
Range([Ô]C1[Ô]).Select
ActiveCell.FormulaR1C1 = [Ô]PROCESSO[Ô]
Range([Ô]C2[Ô]).Select
[ô]Define que o processo será repetido enquanto a célula à direita
[ô]for diferente de vazia
Do While ActiveCell.Offset(0, 1).Value <> [Ô][Ô]
If ActiveCell.Value = [Ô][Ô] Then

ActiveCell.FormulaR1C1 = _
[Ô]=IF(ISNUMBER(FIND([Ô][Ô]NIQ[Ô][Ô],RC[-1])),[Ô][Ô]NIQUELAÇÃO[Ô][Ô],IF(ISNUMBER(FIND([Ô][Ô]FORNO[Ô][Ô],RC[-1])),[Ô][Ô]FORNO[Ô][Ô],IF(ISNUMBER(FIND([Ô][Ô]CLAS[Ô][Ô],RC[-1])),[Ô][Ô]CLASSIFICAÇÃO[Ô][Ô],IF(ISNUMBER(FIND([Ô][Ô]PIST[Ô][Ô],RC[-1])),[Ô][Ô]PISTOLA[Ô][Ô],[Ô][Ô]ACA[Ô][Ô]))))[Ô]
Selection.Copy
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False

End If
ActiveCell.Offset(1, 0).Activate
Loop

Range([Ô]A1[Ô]).Select
Application.ScreenUpdating = False

End Sub
ALEVALE 04/12/2012 11:29:28
#415388
Resposta escolhida
Olha isso,varios exemplos

http://www.rondebruin.nl/find.htm

Sub Macro1()
Dim FindString As String
Dim Rng As Range
FindString = InputBox([Ô]Enter a Search value[Ô])
If Trim(FindString) <> [Ô][Ô] Then
With Sheets([Ô]Plan1[Ô]).Range([Ô]A:A[Ô])
Set Rng = .Find(What:=FindString, _
After:=.Cells(.Cells.Count), _
LookIn:=xlValues, _
LookAt:=xlWhole, _
SearchOrder:=xlByRows, _
SearchDirection:=xlNext, _
MatchCase:=False)
If Not Rng Is Nothing Then
Application.Goto Rng, True
Else
MsgBox [Ô]Nothing found[Ô]
End If
End With
End If
End Sub
MATOSO2010 04/12/2012 11:43:39
#415397
Muito bom Ale, obrigado pela sua resposta rápida, vou ver se consigo inserir esse código na minha macro, qualquer coisa retorno.
MATOSO2010 04/12/2012 12:02:10
#415400
Ainda não consegui, essa macro que eu postei na mensagem, ela faz o seguinte insere uma coluna. depois ela dê a coluna ao lado, enquanto ela estiver vazia insere a fórmula e cola valores, então essa procura também deveria se basear na célula da direita e se fo diferente de vazio, ler a célula da esquerda e voltar a palavra na célula atua.

Bem vou continuar tentando
Tópico encerrado , respostas não são mais permitidas