Macro pour modifier en-tête + contenu d'un classeur excel choisi
Résolu
xGunner
Messages postés
29
Date d'inscription
Statut
Membre
Dernière intervention
-
xGunner Messages postés 29 Date d'inscription Statut Membre Dernière intervention -
xGunner Messages postés 29 Date d'inscription Statut Membre Dernière intervention -
Bonjour, je travail actuellement sur un fichier avec macro qui me permettrait de modifier un classeur choisi par l'utilisateur (modification en-tête de colonnes + ajout de colonnes)
Voici mon code :
Il renomme des en-têtes de colonnes et ajoute un -D à la suite de la Ref Fabricant
Mon souci principal est qu'il me retourne une erreur :
"Erreur d'exécution '13':
Incompatibilité de type"
Dans un premier temps j'aimerai comprendre cette erreur et la corriger
Puis dans un second temps j'aurais besoin de votre aide pour que ces modifications s'applique à un autre classeur Excel qui serait choisi par l'utilisateur.
Merci d'avance pour votre aide
Voici mon code :
Sub MiseEnForme() 'Mise en forme des entêtes : If Range("A1") = "cond." Then: Range("A1").Value = "COLISAGE" If Range("B1") = "code fab." Then: Range("B1").Value = "REF_FAB" If Range("C1") = "désignation" Then: Range("C1").Value = "DESIGNATION" If Range("F1") = "prix total" Then: Range("F1").Value = "PRIX_ACHAT" If Range("G1") = "hiérarchie Niveau 2" Then: Range("G1").Value = "FAMILLE" If Range("H1") = "hiérarchie Niveau 3" Then: Range("H1").Value = "SS_FAMILLE" 'ajout du -D aux réf : Application.ScreenUpdating = False If Right(Range("B2").Value, 2) = "-D" Then MsgBox ("ATTENTION : cette action a déjà été effectué dans cette table (vérifier cellule B2 = *-D)") Else: Dim cell As Range For Each cell In Range("B2:B50000") cell.Value = cell.Value + "-D" Next cell End If 'Vérification des étapes : If Range("A1") = "COLISAGE" And Range("B1") = "REF_FAB" _ And Range("C1") = "DESIGNATION" And Range("F1") = "PRIX_ACHAT" _ And Range("G1") = "FAMILLE" And Range("H1") = "SS_FAMILLE" _ And Right(Range("B2").Value, 2) = "-D" _ Then: Range("R1").Value = "OK, aucun problème" End Sub
Il renomme des en-têtes de colonnes et ajoute un -D à la suite de la Ref Fabricant
Mon souci principal est qu'il me retourne une erreur :
"Erreur d'exécution '13':
Incompatibilité de type"
Dans un premier temps j'aimerai comprendre cette erreur et la corriger
Puis dans un second temps j'aurais besoin de votre aide pour que ces modifications s'applique à un autre classeur Excel qui serait choisi par l'utilisateur.
Merci d'avance pour votre aide
A voir également:
- Macro pour modifier en-tête + contenu d'un classeur excel choisi
- Modifier liste déroulante excel - Guide
- Telecharger macro convertir chiffre en lettre excel - Télécharger - Tableur
- Modifier dns - Guide
- Mise en forme conditionnelle excel - Guide
- Word et excel gratuit - Guide
2 réponses
Bonjour,
'il me retourne une erreur : "Erreur d'exécution '13':
C'est les types de données qui sont incompatibles mais sur quelle ligne as-tu l'erreur ?
Si c'est
il faut remplacer + par & car + fait un calcul et "-D" est du texte.
'il me retourne une erreur : "Erreur d'exécution '13':
C'est les types de données qui sont incompatibles mais sur quelle ligne as-tu l'erreur ?
Si c'est
cell.Value = cell.Value + "-D"
il faut remplacer + par & car + fait un calcul et "-D" est du texte.
xGunner
Messages postés
29
Date d'inscription
Statut
Membre
Dernière intervention
Super c'était ça (l'habitude du C# à mettre des +) merci beaucoup mon erreur est résolu
yg_be
Messages postés
23541
Date d'inscription
Statut
Contributeur
Dernière intervention
Ambassadeur
1 584
bonsoir, dans un premier temps, peux-tu indiquer sur quelle ligne l'erreur se produit?
dans un second temps, je suggère de réécrire la ligne 24:
dans un second temps, je suggère de réécrire la ligne 24:
cell.Value = cstr(cell.Value) + "-D"