質問編集履歴

4

書き途中で更新してしまいました

2022/09/28 06:10

投稿

kumiko
kumiko

スコア48

test CHANGED
File without changes
test CHANGED
@@ -9,7 +9,7 @@
9
9
  ### 実現したいこと
10
10
 
11
11
  - [ ] エラーを回避したいです。
12
- データがない
12
+ (データがない状態でも)
13
13
 
14
14
  ### 発生している問題・エラーメッセージ
15
15
 

3

タイトルも変えたほうがいいかとおもいました

2022/09/28 06:08

投稿

kumiko
kumiko

スコア48

test CHANGED
@@ -1 +1 @@
1
- 実行時エラー 91オブジェクト変数または With ブロック変数が設定されていませんの回避方法について
1
+ データがないときに発生する実行時エラー 91の回避について
test CHANGED
@@ -1,14 +1,15 @@
1
1
  ### 前提
2
2
 
3
3
  指定列に取消線のある行を削除するプログラムを作っています。
4
- 以下の★マークのところでエラー停止してしまいます…
4
+ データをクリアした(全くない状態にした)あとに実行すると以下の★マークのところでエラー停止してしまいます…
5
5
 
6
6
  追記
7
- デーをクリアした(全くない状態にした)あとに実行するとこのエラーが起きると気づきました。
7
+ イトルもかえました。
8
8
 
9
9
  ### 実現したいこと
10
10
 
11
- - [ ] エラーを回避したいです
11
+ - [ ] エラーを回避したいです
12
+ データがない
12
13
 
13
14
  ### 発生している問題・エラーメッセージ
14
15
 
@@ -55,7 +56,8 @@
55
56
  intRowEnd = (s.Columns(23).Find("番号").Row) - 2
56
57
  としました
57
58
 
58
- 追記
59
+
60
+
59
61
  データがない状態で実行するとこのエラーが起きるとわかったので分岐してみました(質問のコードも修正しました)…がまだデータがないとおなじエラーがでます。
60
62
  データがあると動きます
61
63
 

2

さっきまで動いていたけど動かなくなったのがデータをクリアしたせいと気が付いたので

2022/09/28 05:58

投稿

kumiko
kumiko

スコア48

test CHANGED
File without changes
test CHANGED
@@ -63,8 +63,8 @@
63
63
 
64
64
  ### 補足情報
65
65
  エクセル2013です
66
- なぜかさっきまで動いていたのに突然エラーが起きるようになりました(泣)
67
66
 
68
67
 
69
68
 
70
69
 
70
+

1

データがない時に発生とわかったので修正

2022/09/28 05:54

投稿

kumiko
kumiko

スコア48

test CHANGED
File without changes
test CHANGED
@@ -2,6 +2,9 @@
2
2
 
3
3
  指定列に取消線のある行を削除するプログラムを作っています。
4
4
  以下の★マークのところでエラー停止してしまいます…
5
+
6
+ 追記
7
+ データをクリアした(全くない状態にした)あとに実行するとこのエラーが起きると気づきました。
5
8
 
6
9
  ### 実現したいこと
7
10
 
@@ -21,6 +24,11 @@
21
24
  Dim i As Integer '行カウンタ
22
25
  Set s = ThisWorkbook.Sheets("旧データ")
23
26
  '最終行番号の取得
27
+
28
+ If s Is Nothing Then
29
+ MsgBox "完了"
30
+ Else
31
+
24
32
  ★ intRowEnd = (s.Columns(23).Find("番号").Row) - 2 '番号と書かれているセルの二つ上
25
33
 
26
34
  i = intRowEnd '最終行番号を行カウンタにセット
@@ -34,7 +42,7 @@
34
42
  i = i - 1
35
43
  Loop
36
44
  MsgBox "完了"
37
-
45
+ End If
38
46
  End Sub
39
47
  ```
40
48
 
@@ -47,6 +55,12 @@
47
55
  intRowEnd = (s.Columns(23).Find("番号").Row) - 2
48
56
  としました
49
57
 
58
+ 追記
59
+ データがない状態で実行するとこのエラーが起きるとわかったので分岐してみました(質問のコードも修正しました)…がまだデータがないとおなじエラーがでます。
60
+ データがあると動きます
61
+
62
+
63
+
50
64
  ### 補足情報
51
65
  エクセル2013です
52
66
  なぜかさっきまで動いていたのに突然エラーが起きるようになりました(泣)