Rajouter formure recherche V dans une cellule

Bonjour,

J'aimerai rajouter dans la macro la fonction =RECHERCHEV(D4;CENTRE!A:B;2;FAUX) en cellule D7 mais je ne sais pas modifier ma macro. Merci pour votre aide.

Kassou

Option Explicit

Public Sub Copy_data()

'Déclaration des variables

Dim wb As Workbook

Dim wsData As Worksheet, wsTable As Worksheet

Dim lo As ListObject

Dim Cell As Range

'Initialisaton des variables

Set wb = ActiveWorkbook

Set wsData = wb.Worksheets("SAISIE DU JOUR")

Set wsTable = wb.Worksheets("RECAP")

Set lo = wsTable.ListObjects("T_RECAP")

'Détermination de la cellule pour restitution des données

'de Saisie Du Jour dans Recap (T_RECAP)

With lo

If .InsertRowRange Is Nothing Then

Set Cell = .HeaderRowRange.Cells(1).Offset(.ListRows.Count + 1)

Else

Set Cell = .InsertRowRange.Cells(1)

End If

End With

'Restitution des données Saisie du jour dans T_RECAP

With Cell

.Value = wsData.Cells(5, 6).Value 'Date : Cellule F5

.Offset(, 1).Value = wsData.Cells(2, 4).Value 'V/T : Cellule D2

.Offset(, 2).Value = wsData.Cells(4, 4).Value

.Offset(, 3).Value = wsData.Cells(5, 4).Value

.Offset(, 4).Value = wsData.Cells(7, 4).Value

.Offset(, 5).Value = wsData.Cells(9, 4).Value

.Offset(, 6).Value = wsData.Cells(11, 4).Value

.Offset(, 7).Value = wsData.Cells(13, 4).Value

.Offset(, 8).Value = wsData.Cells(14, 4).Value

.Offset(, 9).Value = wsData.Cells(15, 4).Value

.Offset(, 10).Value = wsData.Cells(16, 4).Value

.Offset(, 11).Value = wsData.Cells(18, 4).Value

.Offset(, 12).Value = wsData.Cells(20, 4).Value

.Offset(, 13).Value = wsData.Cells(22, 4).Value

.Offset(, 14).Value = wsData.Cells(24, 4).Value

.Offset(, 15).Value = wsData.Cells(25, 4).Value

.Offset(, 16).Value = wsData.Cells(27, 4).Value 'Prêt : Cellule D27

.Offset(, 17).Value = wsData.Cells(29, 4).Value 'SCE repairs : Cellule D29

End With

'Tri du tableau T_RECAP

With lo

.Sort.SortFields.Add .ListColumns(1).DataBodyRange, xlSortOnValues, xlDescending

.Sort.Apply

.Sort.SortFields.Clear

End With

'RAZ cellules Saisie du Jour

wsData.Range("D2,D4,D5,D7,D9,D11,D13,D14,D15,D16,D18,D20,D22,D24,D25,D27,D29").ClearContents

End Sub

Salut Kassou,

Salut le Forum,

Pour entrer une formule dans une cellule par VBA, le mieux est d'utiliser la propriété "FormulaLocal" qui permet d'écrire en VBA ta formule, comme si tu l'écrivais directement sur Excel :

Range("D7").FormulaLocal = "=RECHERCHEV(D4;CENTRE!A:B;2;FAUX)"

Restant à dispo

Salut Kassou,

Salut le Forum,

Pour entrer une formule dans une cellule par VBA, le mieux est d'utiliser la propriété "FormulaLocal" qui permet d'écrire en VBA ta formule, comme si tu l'écrivais directement sur Excel :

Range("D7").FormulaLocal = "=RECHERCHEV(D4;CENTRE!A:B;2;FAUX)"

Restant à dispo

je connaissais même pas cette fonciton vba … dire que je me prenais la tête avec la fonction Vlookup

je connaissais même pas cette fonciton vba …

Moi aussi j'en apprend tout les jours sur ce Forum x)

Pour sa que j'y traîne ;D

dire que je me prenais la tête avec la fonction Vlookup

Après sa dépend de ce que tu veux faire !

Si c'est un calcul pour une variable, alors on garde les VLookUp, les SUM, les CountIf etc...

Si c'est une formule à saisir dans une cellule via VBA alors ouais! Le FormulaLocal a son intérêt ;D

Et il en existe plein :

  • Formula
  • FormulaLocal
  • FormulaR1C1
  • FormulaArray
  • Etc...

Merci Juice

Et Bonne Année

Rechercher des sujets similaires à "rajouter formure recherche"