enregistrement fichier en xls avec office 2010

julie999

XLDnaute Occasionnel
bonjour
j(utilise un code pour l'enregistrement d'une feuille dans un nouveau classeur qui fonctionner bien par contre dans mon entreprise ils ont passé de office 2003 a office 2010
et maintenant a chaque fois j'ai ce message:
"Les fonctionnalités suivantes ne peuvent pas être enregistrées dans des classeurs sans macro...."


voici le code que j'utilise :
Sheets("direct link").Select
Sheets("direct link").Copy
ChDir "C:\Documents and Settings\as400\Bureau\Archives Way Bill"
ActiveWorkbook.SaveAs chemin & "Way Bill " & _
Format(Worksheets("direct link").Range("c15"), "d\-mm\-yyyy") & ".xls"


MsgBox " le fichier a été sauvegardé "
ActiveWorkbook.Save
ActiveWindow.Close
Sheets("direct link").Select
Range("C15").Select
ActiveCell.FormulaR1C1 = "=TODAY()"
ActiveSheet.Protect "photobox"
Range("F19,I19,L19,E20,H20,K20,F22,I22,L22,E23,H23,K23,D25:L28").Select
Range("D25").Activate
Selection.ClearContents
Range("O19,N20,O22,N23,M25:O29").Select
Range("M25").Activate
Selection.ClearContents
Range("D27:O30").Select
Selection.ClearContents
Range("D25:F25").Select
ActiveWorkbook.Save
End Sub

quand je fait l'enregistreur de macro avec office 2010 il me donne le code avec file name et avec 2003 le code chemin

y aurait il une personne qui sait me corriger cette erreur

merci Justine

je souhaite que cette feuiile s'enregistre en classeur xls sans macro mais avec office 2010
 

Pièces jointes

  • Classeur1 test.xls
    241.5 KB · Affichages: 76
  • Classeur1 test.xls
    241.5 KB · Affichages: 72
  • Classeur1 test.xls
    241.5 KB · Affichages: 76
Dernière édition:

david84

XLDnaute Barbatruc
Re : enregistrement fichier en xls avec office 2010

Bonsoir,
je ne vois pas de code VBA dans ton fichier.
As-tu bien enregistré ton fichier en .xlsm (ou en .xsl si tu veux rester en mode de compatibilité) ?
A partir de 2007, les fichiers comportant des macros doivent être enregistrés sous ce format.
A+
 

julie999

XLDnaute Occasionnel
Re : enregistrement fichier en xls avec office 2010

ChDir "C:\Documents and Settings\as400\Bureau\Archives Way Bill"
ActiveWorkbook.SaveAs chemin & "Way Bill " & _
Format(Worksheets("direct link").Range("c15"), "d\-mm\-yyyy") & ".xls"

j'ai l'impression que pour office 2007 ou 2010 il faut remplacer chemin par filname
mais je n'y arrive pas Julie
 

dionys0s

XLDnaute Impliqué
Re : enregistrement fichier en xls avec office 2010

Depuis Excel 2007, pour que des macros soient enregistrées dans un fichier, il faut que celui-ci soit enregistré en .xlsm (fichier prenant en charge les macros). Si tu fais ça, tes macros devraient fonctionner en principe.
 

julie999

XLDnaute Occasionnel
Re : enregistrement fichier en xls avec office 2010

re
en faire cette sauvegarde je ne veux pas que les macro se sauvegarde je veux juste enregistrer une sauvegarde des données mais bon si c'est pas possible c'est pas grave sinon pour le code j'essaye ca mais idem toujours le message

ActiveWorkbook.SaveAs Filename:="C:\Documents and Settings\as400\Bureau\Way Bill" & _
Format(Worksheets("direct link").Range("c15"), "d\-mm\-yyyy") & ".xls"
ou
ActiveWorkbook.SaveAs Filename:="C:\Documents and Settings\as400\Bureau\Way Bill" & _
Format(Worksheets("direct link").Range("c15"), "d\-mm\-yyyy") & ".xlsm"

et j'obtient toujours le message
"Les fonctionnalités suivantes ne peuvent pas être enregistrées dans des classeurs sans macro...."
 

MJ13

XLDnaute Barbatruc
Re : enregistrement fichier en xls avec office 2010

Bonjour à tous

Les fonctionnalités suivantes ne peuvent pas être enregistrées dans des classeurs sans macro...."

En fait, cela doit vouloir dire qu'il y a dans ton classeur en 2010 des fonctionalités (comme le nombre de MEFC qui peuvnent être supérieures à 3 à partir de Xl2007) qui ne seront pas pris en charge avec un fichier xls (donc compatible XL2003).

C'est pour cela qu'en .xlsm, tu ne devrais plus avoir de problèmes :).
 

julie999

XLDnaute Occasionnel
Re : enregistrement fichier en xls avec office 2010

salut mj13
quand je met ca j'ai encore le message pourtant il est en xlsm
ActiveWorkbook.SaveAs Filename:="C:\Documents and Settings\as400\Bureau\Way Bill" & _
Format(Worksheets("direct link").Range("c15"), "d\-mm\-yyyy") & ".xlsm"
 

kiki29

XLDnaute Barbatruc
Re : enregistrement fichier en xls avec office 2010

Salut, pourquoi pas en PDF ?
Code:
Sub Macro_PDF()
    ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, _
                                    Filename:="C:\Transfert\Classeur1 test.pdf", _
                                    Quality:=xlQualityStandard, _
                                    IncludeDocProperties:=True, _
                                    IgnorePrintAreas:=False, _
                                    OpenAfterPublish:=False
End Sub

PS : Salut MJ13 : Effectivement pour le nom de fichier utiliser qqch comme

Code:
Private Function NomFichierValide(sChaine As String) As Boolean
Const CaracInterdits As String = """*/:<>?[\]|"
Dim i As Long
    NomFichierValide = True
    For i = 1 To Len(CaracInterdits)
        If InStr(sChaine, Mid$(CaracInterdits, i, 1)) > 0 Then
            NomFichierValide = False
            Exit Function
        End If
    Next i
End Function
 
Dernière édition:

Discussions similaires

Statistiques des forums

Discussions
312 229
Messages
2 086 426
Membres
103 206
dernier inscrit
diambote