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

回答編集履歴

3

さらに誤字修正。。

2016/08/04 10:10

投稿

jawa
jawa

スコア3020

answer CHANGED
@@ -23,7 +23,7 @@
23
23
  ```
24
24
  ' 削除対象のシートを削除
25
25
  '略称.Hyperlinks(1).Follow
26
- 'Activate.Delete
26
+ 'ActiveSheet.Delete
27
27
  Dim strShtNm As String
28
28
  strShtNm = 略称.Hyperlinks(1).SubAddress 'リンク文字列を取得("USA!A1"のような値が取得できると思います)
29
29
  strShtNm = Left(strShtNm, InStr(strShtNm, "!") - 1) 'リンク文字列の!以降を除去してシート名だけの文字列にする

2

修正

2016/08/04 10:10

投稿

jawa
jawa

スコア3020

answer CHANGED
@@ -29,7 +29,7 @@
29
29
  strShtNm = Left(strShtNm, InStr(strShtNm, "!") - 1) 'リンク文字列の!以降を除去してシート名だけの文字列にする
30
30
 
31
31
  Dim shtDel As Worksheet
32
- Set shtDel = Workbooks("3.xls").Worksheets(strShtNm)
32
+ Set shtDel = Workbooks("マクロテスト.xlsm").Worksheets(strShtNm)
33
33
 
34
34
  shtDel.Delete
35
35
  ```

1

修正

2016/08/04 10:08

投稿

jawa
jawa

スコア3020

answer CHANGED
@@ -8,7 +8,7 @@
8
8
  という処理順序になっていますが、①での遷移が完了する前に②が処理されてしまい、結果としてデータ一覧シートが削除されてしまうことで略称のセルがなくなっているのではないでしょうか。
9
9
 
10
10
  よくあるやり方
11
- リンク先シートを.Activateする
11
+ 削除したいシートを.Activateする
12
12
  ②アクティブシートを削除する
13
13
  なら問題ないと思うのですが、.Followの動作が特殊(シートの遷移を促すだけ)なのではないかと思います。
14
14