セキュリティレベルも上がってきて、Officeドキュメントに秘密度ラベルを設定するという会社も増えてきました。
VBAでセキュリティラベルを設定する方法を記載しておきます。
やりたいこと
秘密度ラベルを適用するには、ユーザーは Microsoft 365 の職場または学校のアカウントを使用する必要がありますので、個人のアカウントでは見たことないという方もいるかもしれませんね。
以下のSensitivyというやつです。日本語だと「秘密度」って書いてあります。

秘密度ラベルの設定方法について
https://www.softbanktech.co.jp/special/blog/cloud_blog/2022/0062/
秘密度を取得して設定するVBAコード
早速VBAコードを記載します。
Sub getlabel()
' ---- Get Label ---------------
Dim myLabelInfo As Office.labelInfo
Dim labelpart1 As String
Dim labelpart2 As String
Dim labelpart3 As String
Set wb = ThisWorkbook
Set myLabelInfo = wb.SensitivityLabel.getlabel()
labelpart1 = myLabelInfo.LabelId
labelpart2 = myLabelInfo.SiteId
labelpart3 = myLabelInfo.labelName
' ---- Set Label ---------------
Dim docSenseLabel As SensitivityLabel
Dim labelInfo As Office.labelInfo
Dim nwb As Workbook
Set nwb = Workbooks.Add
Set docSenseLabel = nwb.SensitivityLabel
Set labelInfo = docSenseLabel.CreateLabelInfo()
With labelInfo
.AssignmentMethod = MsoAssignmentMethod.PRIVILEGED
.LabelId = labelpart1
.SiteId = labelpart2
.labelName = labelpart3
End With
docSenseLabel.SetLabel labelInfo, labelInfo
nwb.SaveAs Filename:="C:\Temp\temp.xlsx"
nwb.Close
End Sub
解説
このコードは前段で元々のファイルの秘密度を取得し、後段で新しいブックに秘密度ラベルを設定して別ブックとして保存するという内容です!
ですので、元々のファイルから秘密度をUpdateしたいというときは対応できないです。。いづれやり方調べますが取り急ぎ公開しておきます!
さいごに
参考にさせていただいたのは以下のサイトです。日本語の解説あんまりないので、困ってました~。誰かの参考になると嬉しいです。
https://stackoverflow.com/questions/74712674/add-sensitivity-label
ではまた!
