Copie valeur ComboBox dans une feuille d’un autre classeur & message erreur ?

modus57

XLDnaute Occasionnel
Bonsoir à tous:)

Dans un Userform, un CommandButton permet de copier la valeur des ComboBox dans la feuille d’un autre classeur destination et le sauvegarde.

Cela fonctionne bien.

Mais à la nouvelle ouverture du classeur destination, le message suivant s'affiche : "Excel a rencontré un contenu illisible dans le "xxxxx.xlsx". Voulez-vous récupérer le contenu de ce classeur ? Si la source de ce classeur est fiable, cliquez sur oui."

Je n’arrive pas à contourner ce problème.

Un petit coup de pouce SVP, merci d’avance.

Cordialement.
 

Pièces jointes

  • ajout enregistrement.xlsm
    26.5 KB · Affichages: 68
  • data externe.xlsm
    11.1 KB · Affichages: 41

gbinforme

XLDnaute Impliqué
Re : Copie valeur ComboBox dans une feuille d’un autre classeur & message erreur ?

Bonjour,

à mon avis, il te manque le format du fichier :

Code:
            ActiveWorkbook.SaveAs Filename:= _
                "C:\Mes documents\data externe.xlsm", FileFormat:=xlOpenXMLWorkbookMacroEnabled
 

gbinforme

XLDnaute Impliqué
Re : Copie valeur ComboBox dans une feuille d’un autre classeur & message erreur ?

Bonjour modus57

Je pense que c'est ton classeur que tu enregistres qui pose problème :
- il n'a pas de macros : pourquoi mettre xlsm au lieu de xlsx ?
- tes formules de plages nommées ne sont pas correctes
- tes tris ne sont pas corrects, avec .SetRange Range("A2") cela fonctionne
- si tu mets ta plage mal nommée tu crées le problème.
 

modus57

XLDnaute Occasionnel
Re : Copie valeur ComboBox dans une feuille d’un autre classeur & message erreur ?

Bonjour gbinforme.
- il n'a pas de macros : pourquoi mettre xlsm au lieu de xlsx ?
- tes formules de plages nommées ne sont pas correctes
- tes tris ne sont pas corrects, avec .SetRange Range("A2") cela fonctionne

Effectivement j’avais enregistré le classeur "data externe" au format "xlsm", j’ai modifié format d’enregistrement.

Dans la feuille "liste autres émetteurs" la cellule A1 contient le titre et le nom "liste_autres_émetteurs" fait référence à "=DECALER('liste autres émetteurs'!$A$1:$A$1;1;0;NBVAL('liste autres émetteurs'!$A:$A)-1)".

Dans la feuille "type document" la cellule A1 contient le titre et le nom "liste_type_document" fait référence à " =DECALER('type document'!$A$1:$A$1;1;0;NBVAL('type document'!$A:$A)-1)".

SetRange utilise le nom "liste_autres_émetteurs" et "liste_type_document".

Je ne vois pas où est le problème.

@ + modus57
 

modus57

XLDnaute Occasionnel
Re : Copie valeur ComboBox dans une feuille d’un autre classeur & message erreur ?

Bonjour à tous.:):D

Finalement en bidouillant j'ai fini par trouvé d'où vient le problème, c'est la ligne suivante qui provoquait le problème :
Code:
Worksheets("liste autres émetteurs").Sort _
      .SortFields.Add Key:=Range("A2"), SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal
Après suppression le message ne s'affiche plus et l'enregistrement se fait normalement.

Merci gbinforme pour votre participation.
 

Discussions similaires

Statistiques des forums

Discussions
312 201
Messages
2 086 175
Membres
103 152
dernier inscrit
Karibu