回答編集履歴
3
マクロの検証結果による回答訂正
test
CHANGED
@@ -1,94 +1,10 @@
|
|
1
|
-
|
1
|
+
検証結果による訂正(前回のは削除いたしました。混乱をきたし、大変申し訳ございません。)
|
2
2
|
|
3
3
|
|
4
4
|
|
5
|
-
|
5
|
+
1.念のためですが、ファイルの拡張子が「.xlsm」であることは大丈夫ですね?
|
6
6
|
|
7
|
-
|
8
|
-
|
9
|
-
といったところでしょうか…。
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
自身のPC上では動く、という事は、ファイル(Excelではブック)の認識で問題が生じている
|
14
|
-
|
15
|
-
可能性が大きいです。こういう場合、ネット上にファイルを移すといったことは余計に
|
16
|
-
|
17
|
-
問題をややこしくしてしまいますので、
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
0. ファイルをローカルPC上に移す。
|
22
|
-
|
23
|
-
※ネットワーク上に置くと、パス名がややこしくなる上、セキュリティやHDDにかかる負担が増大する為
|
24
|
-
|
25
|
-
好ましくない。
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
0. Worksheets("メイン")の前に、マクロのブック名を追加する。
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
一応例としては、こんな感じでしょうか…。
|
34
|
-
|
35
|
-
```ExcelVBA
|
36
|
-
|
37
|
-
|
38
|
-
|
39
|
-
|
40
|
-
|
41
|
-
'WorkBooks(ブック名)は、()の中に、使用している「ブック名.拡張子」を""で囲って入力。
|
42
|
-
|
43
|
-
|
44
|
-
|
45
|
-
With WorkBooks(ブック名).WorkSheets("メイン")
|
46
|
-
|
47
|
-
|
48
|
-
|
49
|
-
(処理等)
|
50
|
-
|
51
|
-
|
52
|
-
|
53
|
-
End With
|
54
|
-
|
55
|
-
|
56
|
-
|
57
|
-
```
|
58
|
-
|
59
|
-
お節介な話ですが、WorkSheets()等が複数かつ同様の処理にまたがる場合は、
|
60
|
-
|
61
|
-
可読性向上のため、With~End Withで囲うのも一つの手ですよ?
|
62
|
-
|
63
|
-
|
64
|
-
|
65
|
-
これでもしうまくいかない場合は、ファイルのパスが影響していることも
|
66
|
-
|
67
|
-
考えられますが…。
|
68
|
-
|
69
|
-
|
70
|
-
|
71
|
-
|
72
|
-
|
73
|
-
追記:
|
74
|
-
|
75
|
-
|
76
|
-
|
77
|
-
説明不足で申し訳ありません。
|
78
|
-
|
79
|
-
|
80
|
-
|
81
|
-
「And~」の「WorkSheets」の前にも必要ですよ?
|
82
|
-
|
83
|
-
つまりこの場合、「WorSheets」プロパティの前に全て「WorkBooks~」が必要と
|
84
|
-
|
85
|
-
なってしまいますので…。
|
86
|
-
|
87
|
-
|
88
|
-
|
89
|
-
また、念のためですが、ファイルの拡張子が「.xlsm」であることは大丈夫ですね?
|
90
|
-
|
91
|
-
これは、Excelファイルをコピーすると、デフォルトでは「.xlsx」となるので。
|
7
|
+
これは、Excelファイルをコピーすると、デフォルトでは「.xlsx」となるので。
|
92
8
|
|
93
9
|
|
94
10
|
|
@@ -100,13 +16,89 @@
|
|
100
16
|
|
101
17
|
|
102
18
|
|
19
|
+
2.こちらでも検証してみたところ、フォームコントロールで追加したオプションボタンでは
|
20
|
+
|
21
|
+
「WorkSheets("メイン").OptionButton1.value=TRUE」の部分は不要でした。
|
22
|
+
|
23
|
+
この記述が、エラー起因となっていたようです。
|
24
|
+
|
25
|
+
|
26
|
+
|
27
|
+
従いまして、「WorkBooks~」の部分についても不要です。これは私の誤りでした。
|
28
|
+
|
29
|
+
大変申し訳ございませんでした…。
|
30
|
+
|
31
|
+
|
32
|
+
|
33
|
+
例えば、コード例としては次のようになります。
|
34
|
+
|
103
|
-
|
35
|
+
```ExcelVBA
|
36
|
+
|
37
|
+
Sub オプション6_Click()
|
38
|
+
|
39
|
+
|
40
|
+
|
41
|
+
'上記「オプション6」は、システムで自動決定されるので、変更不可。
|
42
|
+
|
43
|
+
|
44
|
+
|
45
|
+
If Worksheets("メイン").Cells(x, y) <> "" Then
|
46
|
+
|
47
|
+
|
48
|
+
|
49
|
+
'処理
|
50
|
+
|
51
|
+
|
52
|
+
|
53
|
+
End If
|
54
|
+
|
55
|
+
|
56
|
+
|
57
|
+
End Sub
|
58
|
+
|
59
|
+
```
|
104
60
|
|
105
61
|
|
106
62
|
|
107
63
|
|
108
64
|
|
65
|
+
3.「どのボタンも選択できない」ということでしたが、オプションボタンのマクロを手入力で
|
66
|
+
|
67
|
+
入力していませんでしたか?
|
68
|
+
|
69
|
+
フォームコントロールの場合もそうですが、マクロ記述の際には
|
70
|
+
|
71
|
+
「コントロールをダブルクリックしてから、出来たマクロに対応する処理を入力する」ことが
|
72
|
+
|
109
|
-
|
73
|
+
必要です。
|
74
|
+
|
75
|
+
|
76
|
+
|
77
|
+
なお、フォームコントロールのオプションボタンのアイテム名は、マクロのフォームモジュールの
|
78
|
+
|
79
|
+
場合と違って、任意での変更は不可能です。
|
80
|
+
|
81
|
+
もし、企業のPC上で再作成する場合は、下記に気をつけて下さい。
|
82
|
+
|
83
|
+
|
84
|
+
|
85
|
+
-**シートコピー不可。**オリジナルのファイルコピーか、場合によってはファイルの作り直しが必要。
|
86
|
+
|
87
|
+
-シート上のオプションボタンをフォームコントロールで配置する場合、出来立てでは全て非アクティブ
|
88
|
+
|
89
|
+
だが、どれか一つをクリックした時点で、クリックしたものが必ずアクティブ状態になるので、
|
90
|
+
|
91
|
+
処理には気をつけること。
|
92
|
+
|
93
|
+
|
94
|
+
|
95
|
+
以上です。また分からないことございましたら、ご連絡下さい。
|
96
|
+
|
97
|
+
|
98
|
+
|
99
|
+
|
100
|
+
|
101
|
+
追記(これは非常に大切なことなので、敢えて残しておきました。):
|
110
102
|
|
111
103
|
|
112
104
|
|
@@ -144,6 +136,8 @@
|
|
144
136
|
|
145
137
|
|
146
138
|
|
147
|
-
情報セキュリティ部門からお叱り
|
139
|
+
情報セキュリティ部門からお叱り受けますよ?
|
148
140
|
|
149
141
|
ログ取られていますから…。
|
142
|
+
|
143
|
+
(場合によっては始末書提出ものとなることも…。)
|
2
ネットワーク上でのマクロ試行禁止について
test
CHANGED
@@ -101,3 +101,49 @@
|
|
101
101
|
|
102
102
|
|
103
103
|
併せてご確認ください。
|
104
|
+
|
105
|
+
|
106
|
+
|
107
|
+
|
108
|
+
|
109
|
+
追記その2:
|
110
|
+
|
111
|
+
|
112
|
+
|
113
|
+
これはおせっかいなことかもしれませんが、「ネットワーク上~」という、
|
114
|
+
|
115
|
+
非常に気になった点がございましたので…。
|
116
|
+
|
117
|
+
|
118
|
+
|
119
|
+
もし「企業のネットワーク」を使ってのマクロ試行、という意味なのでしたら、
|
120
|
+
|
121
|
+
**企業のネットワークでのマクロ試行は厳重禁止事項です!!**
|
122
|
+
|
123
|
+
|
124
|
+
|
125
|
+
企業のネットワークの情報を利用する場合、試行段階では下記のことを厳重に遵守しなければいけません。
|
126
|
+
|
127
|
+
-マクロ:ローカルPC上での処理、かつネットワークデータはローカル上にバックアップしたものだけで試行。
|
128
|
+
|
129
|
+
-データ:企業貸与のPC以外での持ち出し・持ち込み・利用は厳重禁止!
|
130
|
+
|
131
|
+
(情報セキュリティ教育で教育しているはずですが…。)
|
132
|
+
|
133
|
+
|
134
|
+
|
135
|
+
**企業のネットワーク上でマクロ試行し、万一データに損失を与えると、最悪刑事事件や損害賠償**という
|
136
|
+
|
137
|
+
とんでもない事態になることがございますので…。
|
138
|
+
|
139
|
+
|
140
|
+
|
141
|
+
ほとんどの企業では、ネットワーク上でマクロの実行が出来ないように、ユーザーの実行権限を制限
|
142
|
+
|
143
|
+
しています。ネットワークで遮断されたのはそのためと考えられます。
|
144
|
+
|
145
|
+
|
146
|
+
|
147
|
+
情報セキュリティ部門からお叱り(場合によっては始末書もの?)受けますよ?
|
148
|
+
|
149
|
+
ログ取られていますから…。
|
1
WorkBooksの追加点およびマクロ有効条件の追加
test
CHANGED
@@ -65,3 +65,39 @@
|
|
65
65
|
これでもしうまくいかない場合は、ファイルのパスが影響していることも
|
66
66
|
|
67
67
|
考えられますが…。
|
68
|
+
|
69
|
+
|
70
|
+
|
71
|
+
|
72
|
+
|
73
|
+
追記:
|
74
|
+
|
75
|
+
|
76
|
+
|
77
|
+
説明不足で申し訳ありません。
|
78
|
+
|
79
|
+
|
80
|
+
|
81
|
+
「And~」の「WorkSheets」の前にも必要ですよ?
|
82
|
+
|
83
|
+
つまりこの場合、「WorSheets」プロパティの前に全て「WorkBooks~」が必要と
|
84
|
+
|
85
|
+
なってしまいますので…。
|
86
|
+
|
87
|
+
|
88
|
+
|
89
|
+
また、念のためですが、ファイルの拡張子が「.xlsm」であることは大丈夫ですね?
|
90
|
+
|
91
|
+
これは、Excelファイルをコピーすると、デフォルトでは「.xlsx」となるので。
|
92
|
+
|
93
|
+
|
94
|
+
|
95
|
+
マクロは次の2つ共が有効でないと、実行できなくなっています。
|
96
|
+
|
97
|
+
・拡張子が「.xlsm」(マクロ有効ブック形式)
|
98
|
+
|
99
|
+
・セキュリティで「マクロを有効にする」設定にしている。
|
100
|
+
|
101
|
+
|
102
|
+
|
103
|
+
併せてご確認ください。
|