erreur d'execution 13 incopatibilite de type[RESOLU]

  • Initiateur de la discussion Initiateur de la discussion spyki
  • 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 !

spyki

XLDnaute Junior
Bonjour à tous!
J'ai une macro dans un module

Sub transfert_données()
Application.ScreenUpdating = False
Sheets("TABLEAU").Select
Range("Tableau1").Select
Selection.ListObject.ListRows.Add (1)
Sheets("SAISIE").Select
Range("A2:AE2").Select
Selection.Copy
Sheets("TABLEAU").Select
Range("A2").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Selection.PasteSpecial Paste:=xlPasteFormats, Operation:=xlNone, _
SkipBlanks:=False, Transpose:=False
Sheets("SAISIE").Select
Range("H11:M11").Select
Selection.ClearContents
Range("H13:O13").Select
Selection.ClearContents
Range("H15:L15").Select
Selection.ClearContents
Range("H17:K17").Select
Selection.ClearContents
Range("H19:K19").Select
Selection.ClearContents
Range("H21:J21").Select
Selection.ClearContents
End Sub

celle ci me permet de copier coller et d'effacer les données dans un écran de saisie


dans la feuille de saisie j'ai un autre code
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Value >= "a" And Target.Value <= "z" Then
Target.Value = UCase(Left(Target.Value, 1)) & Right$(Target.Value, Len(Target.Value) - 1)
End If

If Not Application.Intersect(Target, Range("l15")) Is Nothing Then
If Not IsEmpty(Target) Then
Target.Value = UCase(Target.Value)
End If
End If
End Sub

si j'ai lance la macro copier coller "Transfert de données"

l'erreur 13 apparaît dans le if du code de la feuille de saisie
If Target.Value >= "a" And Target.Value <= "z" Then


pouvez vous m'aider à supprimer cette erreur

merci bcp
 
Dernière édition:
Re : erreur d'execution 13 incopatibilite de type

Bonjour spyki,


VB:
If Target.Value Like "[a-z]" Then

Cela est plus adapté à ce que tu veux faire je pense.

Bonne journée,
WUTED
 
Dernière édition:
RESOLU erreur d'execution 13 incopatibilite de type

ton code ne fonctionne pas...
dans mon cas;
si je mets les codes en solitaire ils s’exécutent sans problème mais ensemble !niet!!

le code transfert s'exécute jusqu'à delete a la fin

fichier joint
Juan

PS. j'ai enlevé la pce jointe j'ai oublié certaines données
désolé
 
Dernière édition:
Re : erreur d'execution 13 incopatibilite de type

Re,

Oui j'avais pas regardé tout ton code en fait, mais je crois que le problème vient du fait que tu supprimes les valeurs plage par plage et donc le Target.Value renvoie une erreur, avec des cellules fusionnées en plus, j'ai modifié ta macro en :

VB:
Sub transfert_données()
    Application.ScreenUpdating = False
        Sheets("TABLEAU").Select
            Range("Tableau1").Select
            Selection.ListObject.ListRows.Add (1)
        Sheets("SAISIE").Select
            Range("A2:AE2").Select
            Selection.Copy
        Sheets("TABLEAU").Select
            Range("A2").Select
            Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
                :=False, Transpose:=False
            Selection.PasteSpecial Paste:=xlPasteFormats, Operation:=xlNone, _
                SkipBlanks:=False, Transpose:=False
        Sheets("SAISIE").Select
            For Each c In Range("H11:M11")
                c.ClearContents
            Next
            For Each c In Range("H13:O13")
                c.ClearContents
            Next
            For Each c In Range("H15:L15")
                c.ClearContents
            Next
            For Each c In Range("H17:K17")
                c.ClearContents
            Next
            For Each c In Range("H19:K19")
                c.ClearContents
            Next
            Range("H21").ClearContents
End Sub

Et en enlevant les fusions de cellules, ce qui normalement ne change pas grand chose vu que la valeur de la cellule déborde sur celle à côté tant que celle-ci est nulle.

Même si cette version ne te convient pas, tu sais au moins d'où vient le problème maintenant .

Bonne journée,
WUTED

EDIT : code légèrement modifié.
 
Dernière édition:
Re : erreur d'execution 13 incopatibilite de type

bonjour à tous,

peut être comme ceci ! à essayer !?

Code:
Sub Transfert_Données()
Application.ScreenUpdating = False
Sheets("TABLEAU").Select: Range("Tableau1").ListObject.ListRows.Add (1)
Sheets("SAISIE").Select: Range("A2:AE2").Copy
Sheets("TABLEAU").Select: Range("A2").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks:=False, Transpose:=False
Selection.PasteSpecial Paste:=xlPasteFormats, Operation:=xlNone, SkipBlanks:=False, Transpose:=False
With Sheets("SAISIE")
     .Range("H11:M11").ClearContents
     .Range("H13:O13").ClearContents
     .Range("H15:L15").ClearContents
     .Range("H17:K17").ClearContents
     .Range("H19:K19").ClearContents
     .Range("H21") = ""
End With
Application.ScreenUpdating = True
End Sub
 
- 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

Discussions similaires

Réponses
10
Affichages
547
Réponses
18
Affichages
315
  • Question Question
Microsoft 365 worksheet_change
Réponses
29
Affichages
479
Réponses
2
Affichages
281
Réponses
1
Affichages
348
Réponses
17
Affichages
1 K
Réponses
4
Affichages
243
  • Question Question
Microsoft 365 Probléme VBA
Réponses
8
Affichages
317
Retour