質問編集履歴

2

プログラムとエラー内容を書き換えた

2022/10/11 07:49

投稿

syosinsya109
syosinsya109

スコア41

test CHANGED
File without changes
test CHANGED
@@ -8,7 +8,7 @@
8
8
  文字列のハッシュ化
9
9
 
10
10
  ```
11
- パイルエラー:SubまたはFunctionが定義されていません
11
+ オートメーションエラー
12
12
  ```
13
13
 
14
14
  ### 該当のソースコード
@@ -17,7 +17,10 @@
17
17
  Option Compare Database
18
18
 
19
19
  Private Sub コマンド0_Click()
20
+ Dim test As String
21
+
20
- Debug.Print call_sha("a")
22
+   test = sha("a")
23
+  Debug.Print test
21
24
  End Sub
22
25
 
23
26
 

1

試したことを追加しました

2022/10/11 07:43

投稿

syosinsya109
syosinsya109

スコア41

test CHANGED
File without changes
test CHANGED
@@ -6,3 +6,45 @@
6
6
 
7
7
  ### 実現したいこと
8
8
  文字列のハッシュ化
9
+
10
+ ```
11
+ コンパイルエラー:SubまたはFunctionが定義されていません
12
+ ```
13
+
14
+ ### 該当のソースコード
15
+
16
+ ```vba
17
+ Option Compare Database
18
+
19
+ Private Sub コマンド0_Click()
20
+ Debug.Print call_sha("a")
21
+ End Sub
22
+
23
+
24
+ Function sha(str As String) As String
25
+ Dim objSHA256
26
+ Set objSHA256 = CreateObject("System.Security.Cryptography.SHA256Managed")
27
+
28
+ Dim objUTF8
29
+ Set objUTF8 = CreateObject("System.Text.UTF8Encoding")
30
+
31
+ Dim bytes() As Byte
32
+ bytes = objUTF8.GetBytes_4(str)
33
+
34
+ Dim hash() As Byte
35
+ hash = objSHA256.ComputeHash_2((bytes))
36
+
37
+ Dim i
38
+ Dim tmp
39
+ For i = 1 To UBound(hash) + 1
40
+ tmp = tmp & Right("0" & Hex(AscB(MidB(hash, i, 1))), 2)
41
+ Next i
42
+
43
+ sha = LCase(tmp)
44
+
45
+ End Function
46
+ ```
47
+
48
+ ### 試したこと
49
+ 以下のurlのソースコードを用いて動かしたら上記のようなエラーが出てきました。
50
+ https://techblog.recochoku.jp/5991