Bonjour j'ai un petit probl=E8me avec une macro. (D=E9sol=E9 de remettre
un post sur ce sujet, j'ai appliqu=E9 toute les proposition qui m'on
=E9t=E9 faite, mais je n'ai trouv=E9 la solution =E0 mon probl=E8me, alors
peut =EAtre en le reformulant ce sera mieux et encore merci pour votre
aide)
Voila elle fonctionne bien une fois sur deux
elle plante au moment de la copie d'une feuille et elle me cr=E9er une
erreur qui me ferme excel
j'ai annuler toutes les action =E9venementiel les alerte mais aucun
r=E9sultat.
J'ai aussi essay=E9 de changer la facon de faire la copie mais idem.
Je vous transmet le d=E9but de mon code en esp=E9rant que vous pourrez
m'aider:
Option Explicit
Dim codepers As Variant '=E0 la lettre repr=E9sentant le nom du
commercial qui a r=E9alis=E9 la quote
Dim codeann As Variant ' c'est le dernier chiffre de l'ann=E9e en cour
Dim codecl=E9 As Variant ' c'est le code cl=E9
Dim nomquote As String 'nom de la cote
Dim LD, LF As Long 'donne les ligne de d=E9but et de fin de la selection
Dim ldeb, lfin As Long 'variable de ligne s=E9lectionn=E9e pour travail
Dim difligne As Long '=3DLD-LF
Dim finmef As Long 'ligne de fin de mise en forme
Dim Ld=E9but As Long
Sub QUOTE_MAKER()
On Error GoTo erreur
Application.ScreenUpdating =3D False
Application.DisplayAlerts =3D False
Application.EnableEvents =3D False
'Donne la ligne de d=E9but et de fin de la s=E9lection
With Selection
LD =3D .Row
LF =3D LD + .Rows.Count - 1
End With
' initialise les variables
ldeb =3D LD
lfin =3D LF
'G=E9n=E9ration du quote log
' Met dans codepers le code ducommercial qui a r=E9alis=E9 la quote
Select Case Range("G" & LD, "G" & LD).Value
'
Case "Emmanuelle LIEBE"
codepers =3D "E"
Case "Sandrine PETIT"
codepers =3D "S"
Case "Isabelle VIALA"
codepers =3D "I"
Case "Pierre LESUR"
codepers =3D "P"
Case "Olivier GASTON"
codepers =3D "O"
Case "Evelyne THOMASSIN"
codepers =3D "T"
Case "Claire AIME"
codepers =3D "C"
Case "Marie-Dominique RAFFY"
codepers =3D "M"
End Select
codeann =3D Right(Year(Date), 1)
codecl=E9 =3D Right(Hex(Hour(Time) * Minute(Time)), 2)
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
bourby
bonjour,
il me semble que tu n'as pas besoin de sélectionner les feuilles pour les renommer. Ensuite, as-tu essayé d'utiliser Activesheet: il m'est arrivé que ça remmette d'applomb des codes capricieux.
Sheets("Quote file OEM DISTRI").Select {ou : Activate} For Ldébut = LD To LF Activesheet.Range("F" & Ldébut) = nomquote Next Ldébut
Cordialement
Bourby
Yoyo wrote:
Bonjour j'ai un petit problème avec une macro. (Désolé de remettre un post sur ce sujet, j'ai appliqué toute les proposition qui m'on été faite, mais je n'ai trouvé la solution à mon problème, alors peut être en le reformulant ce sera mieux et encore merci pour votre aide)
Voila elle fonctionne bien une fois sur deux elle plante au moment de la copie d'une feuille et elle me créer une erreur qui me ferme excel j'ai annuler toutes les action évenementiel les alerte mais aucun résultat. J'ai aussi essayé de changer la facon de faire la copie mais idem.
Je vous transmet le début de mon code en espérant que vous pourrez m'aider:
Option Explicit Dim codepers As Variant 'à la lettre représentant le nom du commercial qui a réalisé la quote Dim codeann As Variant ' c'est le dernier chiffre de l'année en cour Dim codeclé As Variant ' c'est le code clé Dim nomquote As String 'nom de la cote Dim LD, LF As Long 'donne les ligne de début et de fin de la selection
Dim ldeb, lfin As Long 'variable de ligne sélectionnée pour travail Dim difligne As Long '=LD-LF Dim finmef As Long 'ligne de fin de mise en forme Dim Ldébut As Long
Sub QUOTE_MAKER()
On Error GoTo erreur
Application.ScreenUpdating = False Application.DisplayAlerts = False Application.EnableEvents = False 'Donne la ligne de début et de fin de la sélection With Selection LD = .Row LF = LD + .Rows.Count - 1 End With
' initialise les variables ldeb = LD lfin = LF
'Génération du quote log
' Met dans codepers le code ducommercial qui a réalisé la quote
Select Case Range("G" & LD, "G" & LD).Value ' Case "Emmanuelle LIEBE" codepers = "E" Case "Sandrine PETIT" codepers = "S" Case "Isabelle VIALA" codepers = "I" Case "Pierre LESUR" codepers = "P" Case "Olivier GASTON" codepers = "O" Case "Evelyne THOMASSIN" codepers = "T" Case "Claire AIME" codepers = "C" Case "Marie-Dominique RAFFY" codepers = "M" End Select codeann = Right(Year(Date), 1) codeclé = Right(Hex(Hour(Time) * Minute(Time)), 2)
Sheets("Template Quote VSE").Select Sheets("Template Quote VSE").Copy After:=Sheets(3) ' Copie la feuille template après la feuille 2 Sheets("Template Quote VSE (2)").Select Sheets("Template Quote VSE (2)").Name = "Quote" 'renomme la feuille 'Dim VoirFeuille As Integer Sheets("Quote file OEM DISTRI").Select
For Ldébut = LD To LF Range("F" & Ldébut) = nomquote Next Ldébut 'ThisWorkbook.Activate
'With Sheets("Template Quote VSE") ' VoirFeuille = .Visible ' .Visible = xlSheetVisible ' .Copy After:=Sheets(3) 'With ActiveSheet ' .Name = "Quote" ' End With ' .Visible = VoirFeuille 'End With
Cordialement Yoyo
bonjour,
il me semble que tu n'as pas besoin de sélectionner les feuilles pour
les renommer.
Ensuite, as-tu essayé d'utiliser Activesheet: il m'est arrivé que ça
remmette d'applomb des codes capricieux.
Sheets("Quote file OEM DISTRI").Select {ou : Activate}
For Ldébut = LD To LF
Activesheet.Range("F" & Ldébut) = nomquote
Next Ldébut
Cordialement
Bourby
Yoyo wrote:
Bonjour j'ai un petit problème avec une macro. (Désolé de remettre
un post sur ce sujet, j'ai appliqué toute les proposition qui m'on
été faite, mais je n'ai trouvé la solution à mon problème, alors
peut être en le reformulant ce sera mieux et encore merci pour votre
aide)
Voila elle fonctionne bien une fois sur deux
elle plante au moment de la copie d'une feuille et elle me créer une
erreur qui me ferme excel
j'ai annuler toutes les action évenementiel les alerte mais aucun
résultat.
J'ai aussi essayé de changer la facon de faire la copie mais idem.
Je vous transmet le début de mon code en espérant que vous pourrez
m'aider:
Option Explicit
Dim codepers As Variant 'à la lettre représentant le nom du
commercial qui a réalisé la quote
Dim codeann As Variant ' c'est le dernier chiffre de l'année en cour
Dim codeclé As Variant ' c'est le code clé
Dim nomquote As String 'nom de la cote
Dim LD, LF As Long 'donne les ligne de début et de fin de la selection
Dim ldeb, lfin As Long 'variable de ligne sélectionnée pour travail
Dim difligne As Long '=LD-LF
Dim finmef As Long 'ligne de fin de mise en forme
Dim Ldébut As Long
Sub QUOTE_MAKER()
On Error GoTo erreur
Application.ScreenUpdating = False
Application.DisplayAlerts = False
Application.EnableEvents = False
'Donne la ligne de début et de fin de la sélection
With Selection
LD = .Row
LF = LD + .Rows.Count - 1
End With
' initialise les variables
ldeb = LD
lfin = LF
'Génération du quote log
' Met dans codepers le code ducommercial qui a réalisé la quote
Select Case Range("G" & LD, "G" & LD).Value
'
Case "Emmanuelle LIEBE"
codepers = "E"
Case "Sandrine PETIT"
codepers = "S"
Case "Isabelle VIALA"
codepers = "I"
Case "Pierre LESUR"
codepers = "P"
Case "Olivier GASTON"
codepers = "O"
Case "Evelyne THOMASSIN"
codepers = "T"
Case "Claire AIME"
codepers = "C"
Case "Marie-Dominique RAFFY"
codepers = "M"
End Select
codeann = Right(Year(Date), 1)
codeclé = Right(Hex(Hour(Time) * Minute(Time)), 2)
il me semble que tu n'as pas besoin de sélectionner les feuilles pour les renommer. Ensuite, as-tu essayé d'utiliser Activesheet: il m'est arrivé que ça remmette d'applomb des codes capricieux.
Sheets("Quote file OEM DISTRI").Select {ou : Activate} For Ldébut = LD To LF Activesheet.Range("F" & Ldébut) = nomquote Next Ldébut
Cordialement
Bourby
Yoyo wrote:
Bonjour j'ai un petit problème avec une macro. (Désolé de remettre un post sur ce sujet, j'ai appliqué toute les proposition qui m'on été faite, mais je n'ai trouvé la solution à mon problème, alors peut être en le reformulant ce sera mieux et encore merci pour votre aide)
Voila elle fonctionne bien une fois sur deux elle plante au moment de la copie d'une feuille et elle me créer une erreur qui me ferme excel j'ai annuler toutes les action évenementiel les alerte mais aucun résultat. J'ai aussi essayé de changer la facon de faire la copie mais idem.
Je vous transmet le début de mon code en espérant que vous pourrez m'aider:
Option Explicit Dim codepers As Variant 'à la lettre représentant le nom du commercial qui a réalisé la quote Dim codeann As Variant ' c'est le dernier chiffre de l'année en cour Dim codeclé As Variant ' c'est le code clé Dim nomquote As String 'nom de la cote Dim LD, LF As Long 'donne les ligne de début et de fin de la selection
Dim ldeb, lfin As Long 'variable de ligne sélectionnée pour travail Dim difligne As Long '=LD-LF Dim finmef As Long 'ligne de fin de mise en forme Dim Ldébut As Long
Sub QUOTE_MAKER()
On Error GoTo erreur
Application.ScreenUpdating = False Application.DisplayAlerts = False Application.EnableEvents = False 'Donne la ligne de début et de fin de la sélection With Selection LD = .Row LF = LD + .Rows.Count - 1 End With
' initialise les variables ldeb = LD lfin = LF
'Génération du quote log
' Met dans codepers le code ducommercial qui a réalisé la quote
Select Case Range("G" & LD, "G" & LD).Value ' Case "Emmanuelle LIEBE" codepers = "E" Case "Sandrine PETIT" codepers = "S" Case "Isabelle VIALA" codepers = "I" Case "Pierre LESUR" codepers = "P" Case "Olivier GASTON" codepers = "O" Case "Evelyne THOMASSIN" codepers = "T" Case "Claire AIME" codepers = "C" Case "Marie-Dominique RAFFY" codepers = "M" End Select codeann = Right(Year(Date), 1) codeclé = Right(Hex(Hour(Time) * Minute(Time)), 2)
La solution de mon problème venais du fais de la macro enregistre copier feuille c'est elle qui généré l'erreur. j'ai contourné le problème en fesant un copier coller de la feuille et une remise en forme de celle ci .
encore merci a vous tous pour votre aide
Cordialement Yohann
Bonjour à tous et encore merci
La solution de mon problème venais du fais de la macro enregistre
copier feuille c'est elle qui généré l'erreur.
j'ai contourné le problème en fesant un copier coller de la feuille
et une remise en forme de celle ci .
La solution de mon problème venais du fais de la macro enregistre copier feuille c'est elle qui généré l'erreur. j'ai contourné le problème en fesant un copier coller de la feuille et une remise en forme de celle ci .