質問するログイン新規登録

回答編集履歴

4

説明追記

2020/10/12 12:44

投稿

hatena19
hatena19

スコア34367

answer CHANGED
@@ -18,7 +18,13 @@
18
18
  上記のリンク先の関数を使えば、
19
19
  `=GetAddr()`
20
20
  で自身のアドレスを表示できます。
21
+ ```vba
22
+ Function GetAddr()
23
+ GetAddr = Application.ThisCell.Address(False, False, xlA1)
24
+ End Function
25
+ ```
21
26
 
27
+
22
28
  実際に何をしたいのか明示すべきでしょう。
23
29
 
24
30
  [Excel のユーザー定義関数の制限について](https://support.microsoft.com/ja-jp/help/170787/description-of-limitations-of-custom-functions-in-excel)

3

説明の改善

2020/10/12 12:44

投稿

hatena19
hatena19

スコア34367

answer CHANGED
@@ -15,12 +15,13 @@
15
15
  `=userfunction(ADDRESS(ROW(),COLUMN()))`
16
16
  と複雑にすることに何の意味があるのか?
17
17
 
18
- 実際に何をしたいのか明示すべきでしょう。
19
-
20
18
  上記のリンク先の関数を使えば、
21
19
  `=GetAddr()`
22
20
  で自身のアドレスを表示できます。
23
21
 
22
+ 実際に何をしたいのか明示すべきでしょう。
23
+
24
24
  [Excel のユーザー定義関数の制限について](https://support.microsoft.com/ja-jp/help/170787/description-of-limitations-of-custom-functions-in-excel)
25
25
 
26
- 上記の宣言が理解できているなら、自身のセルを取得しても、できることには限界があります。
26
+ 上記の宣言が理解できているなら、自身のセルを取得しても、できることには限界があります。
27
+ 質問のコードを自身のセルに変更したら循環参照エラーです。

2

説明追記

2020/10/12 11:22

投稿

hatena19
hatena19

スコア34367

answer CHANGED
@@ -15,4 +15,12 @@
15
15
  `=userfunction(ADDRESS(ROW(),COLUMN()))`
16
16
  と複雑にすることに何の意味があるのか?
17
17
 
18
- 実際に何をしたいのか明示すべきでしょう。
18
+ 実際に何をしたいのか明示すべきでしょう。
19
+
20
+ 上記のリンク先の関数を使えば、
21
+ `=GetAddr()`
22
+ で自身のアドレスを表示できます。
23
+
24
+ [Excel のユーザー定義関数の制限について](https://support.microsoft.com/ja-jp/help/170787/description-of-limitations-of-custom-functions-in-excel)
25
+
26
+ 上記の宣言が理解できているなら、自身のセルを取得しても、できることには限界があります。

1

説明追記

2020/10/12 11:12

投稿

hatena19
hatena19

スコア34367

answer CHANGED
@@ -4,4 +4,15 @@
4
4
 
5
5
  ただし、自身の値を参照して、変更すると循環参照になるのでエラーになるかと。
6
6
 
7
- 何をしたいのかを提示した方かいいかも
7
+ 何をしたいのかを提示した方かいいでしょう
8
+
9
+
10
+ ---
11
+ 自身のアドレスを表示するだけなら、セルに下記のように設定すればいいだけ。
12
+ `=ADDRESS(ROW(),COLUMN())`
13
+
14
+ それをわさわざ、
15
+ `=userfunction(ADDRESS(ROW(),COLUMN()))`
16
+ と複雑にすることに何の意味があるのか?
17
+
18
+ 実際に何をしたいのか明示すべきでしょう。