IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Macros et VBA Excel Discussion :

Assigner un niveau/label de sensibilité via une sauvegarde fait par un code VBA Excel


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre régulier
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Octobre 2018
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Administrateur de base de données

    Informations forums :
    Inscription : Octobre 2018
    Messages : 7
    Par défaut Assigner un niveau/label de sensibilité via une sauvegarde fait par un code VBA Excel
    Bonjour,

    Ma société oblige Excel à indiquer un niveau de sensibilité/confidentialité (sensitivity label) sur nos fichiers.

    J'ai plusieurs macro VBA qui dupliquent une feuille du fichier mère et au moment de la sauvegarde automatique (ci-dessous le code très "basic") s'arrête pour me demander quel label ajouter (General, internal, confidential, etc..)

    Comment puis je assigner un niveau/label automatiquement via VBA? (Application.DisplayAlerts = False ne fonctionne pas)

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    ActiveWorkbook.SaveAs filename:= "G:\CheminDuNouveauFichier\NouveauFichier.xlsx" FileFormat:=xlOpenXMLWorkbook, CreateBackup:=False
    j'ai essayé ci-dessous comme proposé par ChatGPT mais sans succès.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    ActiveWorkbook.SensitivityLabel = 0
    ActiveWorkbook.SaveAs filename:= "G:\CheminDuNouveauFichier\NouveauFichier.xlsx" FileFormat:=xlOpenXMLWorkbook, CreateBackup:=False
    Merci par avance pour votre aide.

  2. #2
    Membre émérite Avatar de Valtrase
    Homme Profil pro
    Jeune retraité...
    Inscrit en
    Janvier 2016
    Messages
    510
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 66
    Localisation : France, Pyrénées Orientales (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Jeune retraité...
    Secteur : Boutique - Magasin

    Informations forums :
    Inscription : Janvier 2016
    Messages : 510
    Par défaut
    Bonjour,
    Je pense qu'il faut plutôt se diriger vers la méthode SetLabel de l'objet SensitivityLabel.

  3. #3
    Membre régulier
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Octobre 2018
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Administrateur de base de données

    Informations forums :
    Inscription : Octobre 2018
    Messages : 7
    Par défaut
    Merci Valtrase , j'ai tenté des essais avec le code ci-dessous mais en vain.. j'avoue qu'une ligne de code me serait utile.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    Dim SensitivityLabel As Object
    Set SensitivityLabel = ThisWorkbook.ContentTypeProperties.Labels.Add(1)
    SensitivitLabel.Label = "General"

  4. #4
    Membre émérite Avatar de Valtrase
    Homme Profil pro
    Jeune retraité...
    Inscrit en
    Janvier 2016
    Messages
    510
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 66
    Localisation : France, Pyrénées Orientales (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Jeune retraité...
    Secteur : Boutique - Magasin

    Informations forums :
    Inscription : Janvier 2016
    Messages : 510
    Par défaut
    Bonjour,
    Je ne peux pas tester, mais j'ai trouvé cela :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    Sub setlabel()
     
    Dim docSenseLabel As SensitivityLabel
    Dim labelInfo As Office.labelInfo
    Dim wb As Workbook
     
    Set wb = Workbooks.Add
    Set docSenseLabel = wb.SensitivityLabel
     
    Set labelInfo = docSenseLabel.CreateLabelInfo()
    With labelInfo
        .AssignmentMethod = MsoAssignmentMethod.PRIVILEGED
        .LabelId = "the labelId you got"
        .LabelName = "Important or whatever label you saved earlier"
        .SiteId = "the site Id you got"
    End With
     
    docSenseLabel.setlabel labelInfo, labelInfo
     
    wb.SaveAs Filename:="C:\Users\filename", FileFormat:=51
    wb.Close
     
    End Sub
    Sur ce fil ne discussion :
    Voilà je ne peux en dire plus...

Discussions similaires

  1. Changer le Mot de Passe d'une Base Access par Le code
    Par sigap dans le forum Contribuez
    Réponses: 9
    Dernier message: 21/12/2010, 11h36
  2. Alimentation d'un ComboBox via une requête paramètrée par un autre ComboBox
    Par Platinium_Phoenix dans le forum VB 6 et antérieur
    Réponses: 10
    Dernier message: 30/06/2008, 09h56
  3. [VB] Ouverture d'une base Access par le code
    Par jouf dans le forum Access
    Réponses: 4
    Dernier message: 15/06/2006, 17h54
  4. [VBA-E] Comment créer un bouton ds une wksheet par un code vba
    Par moicwill dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 29/05/2006, 17h12

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo