About
NAME
SHA1– [SHA1クラスモジュール]
作成日:2014/02/04 更新日:2014/02/05 動作環境:[Excel 2000-2016]
SYNOPSIS
Sub Main()
Dim objSHA1 As New SHA1
objSHA1.Text = "a"
Debug.Print objSHA1.TextHash
End Sub
DESCRIPTION
AN OUTLINE — 概要
ExcelVBAから文字列やファイルのハッシュ値を求めることが出来るクラスモジュールです。他のモジュールを使用していないので、Excelが動作する環境であれば、ファイル内で完結した処理が行えます。
なお、SHA1の処理に関しては[http://www.ipa.go.jp/security/rfc/RFC3174JA.html]の[sha1.c]を[VBAコード]に書き直しています。
主な機能:
・指定した文字列、ファイルのハッシュ値を求めることが出来る。
・他のモジュールを使用しないため、Excelファイル内で処理を完結することが出来る。
・三種類の文字コード([SHIFT-JIS/UTF-8/UNICODE)コードを扱ったハッシュ変換が出来る。
PREPARATION — 準備
[DOWNLOAD] から、本ExcelBookをダウンロードします。
ダウンロードが完了したらzipファイルを解凍してください。そこに実行ファイルが含まれています。
HOW TO USE — 使用方法
ダウンロードが完了したらマクロを有効にして開いてください。そこにサンプルモジュールと本モジュールが含まれています。
※クラスをエクスポート、インポートする事で別のExcelBookでも使用することが出来ます。
最初に[Dim objSHA1 As New SHA1]を宣言し、オブジェクトを使用可能にします。
オブジェクトを[Dim objSHA1]とした場合の記述方法は以下の通りです。
Dim objSHA1 As New SHA1
○[Charset]オブジェクト「SHA1.Charset」プロパティ
文字列の文字コードを指定するには、「SHA1.Charset」プロパティを使用します。
指定可能な文字コードは[SHIFT-JIS][UTF-8][UNICODE]の三種類となります。
注:何も指定しない場合は[SHIFT-JIS]が設定されます。
objSHA1.Charset = "UTF-8"
○[SHA1]オブジェクト「SHA1.SHA1」プロパティ
ハッシュ値を求めたい文字列を指定するには、「SHA1.Text」プロパティを使用します。
objSHA1.Text = "a"
○[FilePath]オブジェクト「SHA1.FilePath」プロパティ
ハッシュ値を求めたいファイルを指定するには、「SHA1.FilePath」プロパティを使用します。
objSHA1.FilePath = "C:\hoge.txt"
○文字列のハッシュ値を取得「SHA1.TextHash」メソッド
[SHA1.Text]にて設定した文字列のハッシュ値を取得するには、「SHA1.TextHash」メソッドを使用します。
value = objSHA1.TextHash
○ファイルのハッシュ値を取得「SHA1.FileHash」メソッド
[SHA1.FilePath]にて設定したファイルのハッシュ値を取得するには、「SHA1.FileHash」メソッドを使用します。
value = objSHA1.FileHash
EXAMPLE — 使用例
例1:文字列のハッシュ値を取得する。
Sub Sample()
Dim objSHA1 As New SHA1
objSHA1.Text = "message digest"
Debug.Print objSHA1.TextHash
End Sub
例2:文字コードを指定して文字列のハッシュ値を取得する。
Sub Sample()
Dim objSHA1 As New SHA1
objSHA1.Charset = "UTF-8"
objSHA1.Text = "本日は晴天なり 2012/5/13"
Debug.Print objSHA1.TextHash
End Sub
例3:ファイルのハッシュ値を取得する。
Sub Sample()
Dim objSHA1 As New SHA1
objSHA1.FilePath = "C:\hoge.txt"
Debug.Print objSHA1.FileHash
End Sub
REFERENCE
Name | Description | Syntax |
---|
ATTENTION
・本ソフトを利用した事によるいかなる損害も一切の責任を負いません。
・感想や要望、不具合などありましたら、作者までご連絡ください。
MEMO
本ソフトの[readme.txt]に「NAME/VERSION/AUTHOR/COPYRIGHT」が記載されています。
CONTRIBUTION
寄付歓迎
本モジュールはフリーですが、「このモジュールのおかげで、素晴らしいソフトが作れた」など、寄付をしていただける方がいましたら、作者宛までご一報ください。
DOWNLOAD
VERSION
Version:1.00 – Tue Feb 4, 2014
Version:1.01 – Wed Feb 5, 2014 | 他のハッシュクラスとメソッド名を統一するため次のメソッド名を変更
[Strings]→[Text]/[SHA1String]→[TextHash]/[SHA1File]→[FileHash]
AUTHOR
Syunzi Shimohata < webmaster@taru-net.jp > https://www.taru-net.jp/