質問編集履歴

3

全体のコードを添付しました。

2021/01/20 11:35

投稿

ice930
ice930

スコア99

test CHANGED
File without changes
test CHANGED
@@ -59,3 +59,143 @@
59
59
  同じような経験されたことが在る方、または当方のケアレスミスの可能性など(変数の参照違い以外で)考えられる原因をご指摘いただきたく質問致しました。
60
60
 
61
61
  よろしくお願いします。
62
+
63
+
64
+
65
+ 全体のコードはこちらです
66
+
67
+ ```ここに言語を入力
68
+
69
+ Private Sub Worksheet_BeforeRightClick(ByVal Target As Range, Cancel As Boolean)
70
+
71
+ Dim EROW As Long
72
+
73
+ Dim Row As Long
74
+
75
+ Dim col As Long
76
+
77
+ Dim log As String
78
+
79
+
80
+
81
+ EROW = Cells(Rows.Count, 2).End(xlUp).Row
82
+
83
+ Row = Target.Row
84
+
85
+ col = Target.Column
86
+
87
+
88
+
89
+ If Row <= EROW And Row > 5 And col = 2 And Cells(Row, 2).Interior.ColorIndex = 34 Then
90
+
91
+
92
+
93
+ If Cells(Row, 5) = "" Then
94
+
95
+ MsgBox "記録日が記載されていません。"
96
+
97
+ End If
98
+
99
+ Dim WB As String
100
+
101
+ Dim path As String
102
+
103
+ Dim cate As String
104
+
105
+ Dim rowcate As Long
106
+
107
+ Dim colcate As Long
108
+
109
+ Dim Bcate As String
110
+
111
+ Dim Bname As String
112
+
113
+ Dim sename As String
114
+
115
+ Dim zyaname As String
116
+
117
+ Dim tgtsheet As String
118
+
119
+ Dim PRow As Long
120
+
121
+
122
+
123
+ path = ThisWorkbook.path
124
+
125
+ WB = ThisWorkbook.name
126
+
127
+ cate = Cells(Row, 2)
128
+
129
+ tgtsheet = Cells(Row, 4)
130
+
131
+
132
+
133
+ i = 1
134
+
135
+ Do While Cells(i, 9) <> "規  則"
136
+
137
+ i = i + 1
138
+
139
+ Loop
140
+
141
+ rowcate = i - 1
142
+
143
+ colcate = Cells(6, Columns.Count).End(xlToLeft).Column
144
+
145
+ Bcate = Range(Cells(9, 9), Cells(rowcate, colcate)).Find(cate).Column
146
+
147
+ zyaname = Range(Cells(6, Bcate), Cells(9, Bcate)).Value '’’’’’’’’’’’’’’’ここ質問中
148
+
149
+ sename = "書籍一覧(" & zyaname & ")"
150
+
151
+ Bname = "書籍記録(" & Cells(6, Bcate) & ")"
152
+
153
+
154
+
155
+ Workbooks.Open path & "\" & Bname & ".xlsx" '指定のワークブックを開く
156
+
157
+
158
+
159
+ Workbooks(WB).Worksheets(tgtsheet).Move After:=Workbooks(Bname).Sheets(Worksheets.Count) '読書データのブックを移動
160
+
161
+
162
+
163
+ Workbooks(Bname).Close savechanges:=True '変更を保存して閉じる
164
+
165
+
166
+
167
+ Workbooks(WB).Worksheets(sename).Activate '貼り付け先のシート
168
+
169
+ PRow = Cells(Rows.Count, 2).End(xlUp).Row '貼り付け先のリスト最終行
170
+
171
+
172
+
173
+ Worksheets("インデックス").Range(Cells(Row, 2), Cells(Row, 8)).Cut Destination:=Worksheets(sename).Cells(PRow + 1, 2) 'インデックスからコピペ
174
+
175
+
176
+
177
+ Worksheets("インデックス").Activate
178
+
179
+ Range(Cells(Row, 2), Cells(Row, 8)).Delete shift:=xlShiftUp '切り取った部分を削除して上にシフト
180
+
181
+
182
+
183
+ Range(Cells(4, 1), Cells(105, 8)).Borders.LineStyle = xlContinuous '格子作成
184
+
185
+ Range(Cells(4, 1), Cells(105, 8)).BorderAround Weight:=xlThick '周囲太枠
186
+
187
+
188
+
189
+ End If
190
+
191
+
192
+
193
+ End Sub
194
+
195
+
196
+
197
+ ```
198
+
199
+ 今回質問しました箇所に「ここ質問中」というコメントが付いています。
200
+
201
+ よろしくお願いします。

2

試したコードをそれぞれ記載しました

2021/01/20 11:35

投稿

ice930
ice930

スコア99

test CHANGED
@@ -1 +1 @@
1
- アプリケーション定義またはオブジェクト定義のエラーです。
1
+ セル参照時のアプリケーション定義またはオブジェクト定義のエラーです。
test CHANGED
@@ -18,15 +18,37 @@
18
18
 
19
19
   zyaname = Cells(6,Bcate)
20
20
 
21
+ ```
22
+
23
+
24
+
25
+ ```ここに言語を入力
26
+
27
+ Bcate = Range(Cells(9, 9), Cells(rowcate, colcate)).Find(cate).Column
28
+
21
29
  zyaname = Cells(6,Bcate).Value
30
+
31
+ ```
32
+
33
+
34
+
35
+ ```ここに言語を入力
36
+
37
+ Bcate = Range(Cells(9, 9), Cells(rowcate, colcate)).Find(cate).Column
22
38
 
23
39
  zyaname = Range(Cells(6, Bcate), Cells(9, Bcate))
24
40
 
41
+ ```
42
+
43
+ ```ここに言語を入力
44
+
45
+ Bcate = Range(Cells(9, 9), Cells(rowcate, colcate)).Find(cate).Column
46
+
25
47
  zyaname = Range(Cells(6, Bcate), Cells(9, Bcate)).Value
26
48
 
49
+ ```
27
50
 
28
51
 
29
- ```
30
52
 
31
53
  変数Bcateへは問題なく変数が入力されており(10)、目的の文字列が有るのはJ列です。
32
54
 

1

誤字の訂正

2021/01/20 11:25

投稿

ice930
ice930

スコア99

test CHANGED
File without changes
test CHANGED
@@ -1,6 +1,6 @@
1
1
  結合されたセルの文字列を、変数に入れたいのですが、件名の通りのエラーが表示されます。
2
2
 
3
- いままで左上のセル番号のみを指定すれば問題なく処理されたのですが、今回に限っては処理されません。
3
+ いままで左上のセル番号のみを指定すれば問題なく処理されたのですが、今回に限っては処理されません。
4
4
 
5
5
 
6
6
 
@@ -30,7 +30,7 @@
30
30
 
31
31
  変数Bcateへは問題なく変数が入力されており(10)、目的の文字列が有るのはJ列です。
32
32
 
33
- セルは6列目から9列目まで結合されており、ここの文字列を数に入れ込みたいです。
33
+ セルは6列目から9列目まで結合されており、ここの文字列を数に入れ込みたいです。
34
34
 
35
35
 
36
36