Ajouter une fonction dans Macro VBA
Résolu
Ludivine
-
jlnch Messages postés 12 Statut Membre -
jlnch Messages postés 12 Statut Membre -
Bonjour,
J'ai une macro VBA (ci dessous) à laquelle j'aimerai ajouter une fonction:
Si B2 contient "del" alors indiquer "Delivery" en J1; sinon indiquer "Collect" en J1
Attention, la cellule B2 peut contenir "del" mais toujours avec d'autres caractères exemple: up2del01201210161301.txt dans ce cas indiquer "Delivery" en J1
Pourriez vous m'aider ?
Voici ma macro pour le moment à laquelle je souhaite ajouter la fonction expliquée ci dessus:
Merci beaucoup de votre aide !!
J'ai une macro VBA (ci dessous) à laquelle j'aimerai ajouter une fonction:
Si B2 contient "del" alors indiquer "Delivery" en J1; sinon indiquer "Collect" en J1
Attention, la cellule B2 peut contenir "del" mais toujours avec d'autres caractères exemple: up2del01201210161301.txt dans ce cas indiquer "Delivery" en J1
Pourriez vous m'aider ?
Voici ma macro pour le moment à laquelle je souhaite ajouter la fonction expliquée ci dessus:
Sub M2_ajoutL1_look4errors()
'
' M2_ajoutL1_look4errors Macro
'
' Touche de raccourci du clavier: Ctrl+n
'
Workbooks.Open Filename:= _
"\\Pc002\travail\Services\TSG\Nadège GUILLY\UPS\MONITOR REPORT\Macro\1.xls"
Rows("1:1").Select
Selection.Insert Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove
Range("A1").Select
ActiveCell.FormulaR1C1 = "a"
Range("B1").Select
ActiveCell.FormulaR1C1 = "b"
Range("C1").Select
ActiveCell.FormulaR1C1 = "c"
Range("D1").Select
ActiveCell.FormulaR1C1 = "d"
Range("E1").Select
ActiveCell.FormulaR1C1 = "e"
Range("F1").Select
ActiveCell.FormulaR1C1 = "f"
Range("G1").Select
ActiveCell.FormulaR1C1 = "g"
Range("I1").Select
ActiveCell.FormulaR1C1 = "=COUNTA(C[-8])-1"
Range("J1").Select
ActiveCell.FormulaR1C1 = "=R[1]C[-8]"
Range("J2").Select
Cells.Select
With Selection
.HorizontalAlignment = xlCenter
.VerticalAlignment = xlBottom
.WrapText = False
.Orientation = 0
.AddIndent = False
.IndentLevel = 0
.ShrinkToFit = False
.ReadingOrder = xlContext
.MergeCells = False
End With
Rows("1:1").Select
Selection.AutoFilter
ActiveSheet.Range("$A$1:$G$255").AutoFilter Field:=5, Criteria1:="=*error*" _
, Operator:=xlAnd
ActiveWorkbook.Save
ActiveWindow.Close
End Sub
Merci beaucoup de votre aide !!
5 réponses
-
Salut,
par exemple,
Dim a As String Dim x As Integer a = Range("B2").Value x = InStr(1, a, "del") If x > 0 Then Range("J1").Value = "Delivery" Else Range("J1").Value = "Collect" End If
Bien à toi.
Julien -
bonjour
Ne serait ce pas plutôt J2 que J1 (tu y as écris une formule)
autre manièreRange("J2") = IIf(InStr(Range("B2").Value, "del"), "delivery", "collect")
-
Bonjour et merci à vous 2 !!
C'est bien en J1 car la formule que j'avais faite ne me convient pas et je veux la remplacer par une de vos propositions !!
Je test ça tout de suite !!
Merci beaucoup, je vous tiens au courant ;) -
-
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question -