Erreur incompatibilité de type
Excel33
-
Patrice33740 Messages postés 8930 Statut Membre -
Patrice33740 Messages postés 8930 Statut Membre -
Bonjour,
J'essaye de lancer ma macro mais j'ai une erreur "incompatibilité de type"
Voici ma macro:
Sub test2()
With Sheets.Application
ctr = Sheet.Count - 1
.Range("AA2:AA80000").Value = WorksheetFunction.VLookup(.Range("V2:V80000").Value, Sheets(ctr).Range("W2:W80000"), 1, False)
End With
End Sub
Voilà j'essaye de faire une recherchev en prenant en compte la colonne de la feuille précédente à la feuille active.
Si quelqu'un peut m'aider.
Ps: Lorsque je mets moins de ligne, genre 1 000 au lieu de 80 000, la macro fonctionne
Merci
J'essaye de lancer ma macro mais j'ai une erreur "incompatibilité de type"
Voici ma macro:
Sub test2()
With Sheets.Application
ctr = Sheet.Count - 1
.Range("AA2:AA80000").Value = WorksheetFunction.VLookup(.Range("V2:V80000").Value, Sheets(ctr).Range("W2:W80000"), 1, False)
End With
End Sub
Voilà j'essaye de faire une recherchev en prenant en compte la colonne de la feuille précédente à la feuille active.
Si quelqu'un peut m'aider.
Ps: Lorsque je mets moins de ligne, genre 1 000 au lieu de 80 000, la macro fonctionne
Merci
A voir également:
- Erreur incompatibilité de type
- Iptv erreur de lecture - Forum TV & Vidéo
- Type de ram - Guide
- Erreur 3000 france tv - Forum Lecteurs et supports vidéo
- Erreur t32 ✓ - Forum Livebox
- Comment changer le type de fichier - Guide
4 réponses
Bonjour,
C'est pas normal que tu aies cette erreur, dès la ligne 3, tu devrais avoir l'erreur d’exécution 424 : Objet requis !!!
Une fois corrigée cette erreur, il y a effectivement une incompatibilité de type, en effet RechercheV sert à rechercher une valeur dans un plage de cellules mais ne permet pas de chercher un tableau de valeurs.
C'est pas normal que tu aies cette erreur, dès la ligne 3, tu devrais avoir l'erreur d’exécution 424 : Objet requis !!!
Une fois corrigée cette erreur, il y a effectivement une incompatibilité de type, en effet RechercheV sert à rechercher une valeur dans un plage de cellules mais ne permet pas de chercher un tableau de valeurs.
Bonjour Patrice,
moi ce que je veux c'est rechercher une valeur sur une colonne et mettre ce que je cherche dans la cellule à coté. Donc c'est bien une recherchev et c'est comme si on l’étendait après sur toute les cellules de la colonne.
Comment ça ce fait que cela marche pour un nombre limité de ligne alors.
As-tu une solution stp ?
moi ce que je veux c'est rechercher une valeur sur une colonne et mettre ce que je cherche dans la cellule à coté. Donc c'est bien une recherchev et c'est comme si on l’étendait après sur toute les cellules de la colonne.
Comment ça ce fait que cela marche pour un nombre limité de ligne alors.
As-tu une solution stp ?
Bonjour,
Ici, un excellent cours VBA pour débutants (et plus si affinités...) :
ftp://ftp-developpez.com/bidou/Cours/VBA/formationVBA.pdf
Une proposition :
Ici, un excellent cours VBA pour débutants (et plus si affinités...) :
ftp://ftp-developpez.com/bidou/Cours/VBA/formationVBA.pdf
Une proposition :
Sub test()
Dim formule As String
formule = Sheets(Sheets.Count - 1).Name
formule = "=VLOOKUP(RC[-5],'" & formule & "'!R2C23:R80000C23,1,FALSE)"
With ActiveSheet 'ou autre feuille à définir
.Range("AA2:AA80000").FormulaR1C1 = formule
.Range("AA2:AA80000").Value = .Range("AA2:AA80000").Value
End With
End Sub
Re Patrice,
Super ça marche super bien, je te remercie.
J'ai deux autres question si ça te dérange pas. Est-ce qu'il y a moyen que la formule s'arrète lorsqu'on arrive à la fin ?
Et cette formule marche si on souhaite faire une recherchev sur toute la colonne comme pour ce cas là mais cette fois ci me prendre la 2ème colonnes de la plage et pas la première ?
Merci encore pour ton aide
Super ça marche super bien, je te remercie.
J'ai deux autres question si ça te dérange pas. Est-ce qu'il y a moyen que la formule s'arrète lorsqu'on arrive à la fin ?
Et cette formule marche si on souhaite faire une recherchev sur toute la colonne comme pour ce cas là mais cette fois ci me prendre la 2ème colonnes de la plage et pas la première ?
Merci encore pour ton aide
Bonjour,
Voici un code qui tient compte de la taille de la base de données (colonne W de la pénultième feuille) et de la taille des informations à rechercher (colonne V de la feuille active).
Il place en colonne AA la valeur recherchée dans la colonne W et en colonne AB celle qui y correspond dans la colonne X.
Voici un code qui tient compte de la taille de la base de données (colonne W de la pénultième feuille) et de la taille des informations à rechercher (colonne V de la feuille active).
Il place en colonne AA la valeur recherchée dans la colonne W et en colonne AB celle qui y correspond dans la colonne X.
Option Explicit
Sub test()
Dim formule As String
Dim dL1 As Long, dL2 As Long
With ActiveSheet 'ou autre feuille à définir
' Dernière ligne de la colonne V de la feuille active
dL1 = .Range("V" & .Rows.Count).End(xlUp).Row
' Nom de la pénultième feuille
formule = Sheets(Sheets.Count - 1).Name
' Dernière ligne de la colonne W de la pénultième feuille
dL2 = Worksheets(formule).Range("W" & .Rows.Count).End(xlUp).Row
' Formule de la colonne AA de la feuille active (1ère info)
formule = "=VLOOKUP(RC22,'" & formule & "'!R2C23:R" & dL2 & "C24,1,FALSE)"
.Range("AA2:AA" & dL1).FormulaR1C1 = formule
' Formule de la colonne AB de la feuille active (2ème info)
formule = Replace(formule, ",1,", ",2,")
.Range("AB2:AB" & dL1).FormulaR1C1 = formule
' Remplacer les formules par leur valeur
.Range("AA2:AB" & dL1).Value = .Range("AA2:AB" & dL1).Value
End With
End Sub
J'ai excel 2013, ah oui ça marche avec 60 000 lignes c'est bizarre, pourquoi moi ca marche pas