Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Bloc with non défini

Calvus

XLDnaute Barbatruc
Bonjour le forum,

Après 3 heures de prise de tête, je vous soumets un problème déjà évoqué plusieurs fois ici mais dont je n'arrive pas à me dépêtrer !

Le code est celui de la feuille 2.

Le second code de la même feuille fonctionne.

Ce que j'essaie de faire, est de trouver une correspondance de la feuille 3 sur la 2, via Application.Match.

J'ai refait des codes des dizaines de fois, il ne ressemble donc plus à ce que c'était il y a une heure; mais qui était plus simple et me renvoyait Variable de Bloc With Non Défini.

Tel qu'il est écrit maintenant, le code ne génère plus d'erreur mais ne renvoie simplement rien.

Merci
 

Pièces jointes

  • Bloc With.xlsm
    18.4 KB · Affichages: 60

laetitia90

XLDnaute Barbatruc
Re : Bloc with non défini

RR toutes & tous

une version simple d'un Mdit tabl


mais bon si pas trop de lignes pas bien utile

Code:
Sub es()
 Dim x, y, a As Long, b As Long
 x = Feuil2.Range("c1:h" & Feuil2.Cells(Rows.Count, 3).End(3).Row)
 y = Feuil3.Range("b1:f" & Feuil3.Cells(Rows.Count, 3).End(3).Row)
 For a = LBound(x) To UBound(x)
 For b = LBound(y) To UBound(y)
 If x(a, 1) = y(b, 2) Then x(a, 3) = y(b, 1): x(a, 4) _
 = y(b, 3): x(a, 5) = y(b, 4): x(a, 6) = y(b, 5)
 Next b: Next a
 Feuil2.[C1].Resize(UBound(x, 1), UBound(x, 2)) = x
End Sub
 

Calvus

XLDnaute Barbatruc
Re : Bloc with non défini

Bonsoir à tous,

Si, est ce une proposition pour le fun ou penses tu que c'est mieux ?
J'ai lu plusieurs fois que Index.Match était beaucoup plus rapide que Find.

Lone-wolf, je te cherchais sur la page main ne te trouvais plus ! Je cherchais un grand gaillard moi, type mutant ou Seigneur des Anneaux pas très causant, et voilà que je tombe sur un petit rondouillard souriant !

Et bien, j'aimerais comprendre; avec XL 2010, il n'y a aucun problème

Je viens de réessayer avec ton dernier code, et en fait il y a une erreur qu'il suffit de corriger. Il est inscrit G2 au lieu de C2.

Par contre le code modifié de Paf fonctionne....sauf si l'on n'a pas de données contiguës...

Double Zéro, encore vivante après le code de Laetitia ?
Je suis sûr que tu vas te familiariser avec les Index Equiv.....

Laetitia , J'ai rien compris !! Fais gaffe, je risque de te demander de m'expliquer :
Merci pour ce code.

Très bonne soirée à tous
 

Calvus

XLDnaute Barbatruc
Re : Bloc with non défini

Re Kojak !

Euh..... Range ("g2") correspond bien à la cellule G2 non ?

Par ailleurs, en laissant comme ça, j'obtiens à nouveau Erreur 1004 cf image

A+
 

Pièces jointes

  • Erreur 1004.PNG
    6.4 KB · Affichages: 41

Si...

XLDnaute Barbatruc
Re : Bloc with non défini

re

Si, est ce une proposition pour le fun ou penses tu que c'est mieux ?
J'ai lu plusieurs fois que Index.Match était beaucoup plus rapide que Find.

donc tu es concerné par le petit mot que je me préparais à adresser à Laetitia

, pour passer une bonne soirée
 

Lone-wolf

XLDnaute Barbatruc
Re : Bloc with non défini

Je vous salue Calvus !

Et bein, on a eu chaud!

EDIT: l'image est un gif animé et elle reste figée. Une solution?


Très bonne journée


Amicalement Lone-wolf
 
Dernière édition:

Calvus

XLDnaute Barbatruc
Re : Bloc with non défini

Bonjour à tous,

Si, pourrais tu m'expliquer l'exact fonctionnement de R(x, x) dans ton code ?
J'ai du mal à adapter dans mon fichier, car je n'ai pas tout à fait saisi la logique, contrairement à ce que je croyais.

[Highlight=vb]
Private Sub CommandButton2_Click()
Dim R As Range, L As Long
[F:F].Clear
For Each R In Range("C1", [C6000].End(xlUp))
If IsError(Application.Match(R, Feuil3.[C:C], 0)) Then
R(1, 4) = "oups"
Else
R(1, 3) = Application.Match(R, Feuil3.[C:C], 0)
End If
Next
End Sub
[/code]

Si nécessaire je posterai mon fichier.

Merci
 

Discussions similaires

Réponses
4
Affichages
234
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…