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

incompatibilité type 13 vba

  • Initiateur de la discussion Initiateur de la discussion Nashou
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

N

Nashou

Guest
Bonjour,

J'ai ce code qui ne fonctionne pas et je m'arrache les cheveux depuis 2 heures à éplucher le forum et comprendre mon problème...


Le but, c'est de passer en revu chaque ligne dans la colonne "B" et de trouver si la valeur "PARIS" y est affectée. Si c'est le cas, ça copie la ligne entière dans la 1ere cellule de ma feuille courante.

Mon problème est une erreur d'incompatibilité sur cette ligne :

If cellule.Value = "PARIS" Then

Je ne comprends pas ce qui cloche ...

Plz help 🙁
 
Re : incompatibilité type 13 vba

Bonjour Nashou
Essayez :
Code:
[COLOR="DarkSlateGray"][B]Private Sub CommandButton1_Click()

Dim cellule As Range

   For Each cellule In ThisWorkbook.Worksheets("ESSAI").Range("B1").EntireColumn[COLOR="Red"].Cells[/COLOR]
   
      If cellule.Value = "PARIS" Then
         cellule.EntireRow.Copy
         ThisWorkbook.Worksheets("Feuil2").Range("A1").PasteSpecial
      End If
   
   Next cellule

End Sub[/B][/COLOR]
De plus, il ne doit pas y avoir d'espace dans Entir eColumn et Past eSpecial.​
ROGER2327
#3490


28 Floréal An CCXVIII
2010-W20-1T20:30:22Z
 
Dernière édition:
Re : incompatibilité type 13 vba

Bonsoir


Essayes ceci pour préserver ce qui te reste de cheveux 😉
(méthode employant le filtre automatique en VBA)

Code:
Sub a()
Dim source As Worksheet, desti As Worksheet
Set source = Worksheets("ESSAI"): Set desti = Worksheets("Feuil2")
With source
    .Range(.[B1], .[B65536].End(xlUp)).AutoFilter 1, "PARIS"
    .[_FilterDataBase].SpecialCells(12).EntireRow.Copy desti.[A1]
    Application.CutCopyMode = False
    .AutoFilterMode = False
End With
End Sub

EDITION:bonsoir ROGER2327
 
Re : incompatibilité type 13 vba

Merciiiiiiiiiiiii ROGERRRRRRRRRR2327 !!

Ca fonctionne maintenant !! Youpiiiiiiiii

Bon le truc, c'est que ça me copie la dernière ligne où il y a écrit "PARIS". Ca ne copie pas chaque ligne où PARIS est inscrit.
Y'a plus qu'à chercher une alternative ..

j'essaierai ta macro aussi staple !
 
Re : incompatibilité type 13 vba

Re...
Essayez ceci :
Code:
[COLOR="DarkSlateGray"][B]Private Sub CommandButton1_Click()

Dim cellule As Range, i&

   For Each cellule In ThisWorkbook.Worksheets("ESSAI").Range("B1").EntireColumn.Cells
   
      If cellule.Value = "PARIS" Then
         cellule.EntireRow.Copy
         ThisWorkbook.Worksheets("Feuil2").Range("A1").Offset(i, 0).PasteSpecial
         i = i + 1
      End If
   
   Next cellule

End Sub[/B][/COLOR]
ou le code de Staple1600 qui m'a l'air très bien...​
ROGER2327
#3492


28 Floréal An CCXVIII
2010-W20-1T21:55:25Z
 
Re : incompatibilité type 13 vba

Bonjour
j'ai un problème l'erreur 13 (incomptabilité de type ):
voila mon macro
Private Declare Function Beep Lib "Kernel32" (ByVal Fq As Long, ByVal Tm As Long) As Long
Sub BeepBeep()
Beep 392, 200
Beep 494, 100
Beep 588, 200
Beep 740, 100
Beep 880, 400
Beep 740, 100
Beep 880, 900
End Sub

Private Sub Worksheet_Calculate()
If Range("H07").Value > 60 Then
Call BeepBeep
MsgBox " TR1: Attention valeur atteinte"
End If
If Range("H09").Value > 50 Then
Call BeepBeep
MsgBox " Valeur seuil atteint "
End If
End Sub

merci pour votre aide
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

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