質問編集履歴
5
コードの修正
title
CHANGED
File without changes
|
body
CHANGED
@@ -17,11 +17,21 @@
|
|
17
17
|
Set Ws = Worksheets(3)
|
18
18
|
MRow = Ws.Cells(Rows.Count, 3).End(xlUp).Row '最終行番号を取得する
|
19
19
|
MCol = Ws.Cells(2, 2).End(xlToRight).Column '右端列番号を取得する
|
20
|
-
|
20
|
+
For i = 3 To MRow '各行に数式を追加する
|
21
|
+
Ws.Cells(i, 11).Value = "-": Ws.Cells(i, 13).Value = "-": Ws.Cells(i, 15).Value = "-"
|
22
|
+
Ws.Cells(i, MCol - 1).Value = "=" '減算記号と等号を出力する
|
23
|
+
Ws.Cells(i, 12).Value = "0": Ws.Cells(i, 14).Value = "0": Ws.Cells(i, 16).Value = "0" '数値の初期値を出力する
|
24
|
+
Ws.Cells(i, MCol).Value = "=J" & i & "-(L" & i & "+N" & i & "+P" & i & ")" '数式を出力する
|
25
|
+
|
21
|
-
Set fc = Range(Ws.Cells(i,
|
26
|
+
Set fc = Range(Ws.Cells(i, 3), Ws.Cells(i, MCol)).FormatConditions.Add(xlExpression, , "=$R" & "$" & i & " = " & "0")
|
22
|
-
Set fc = Range(Ws.Cells(i,
|
27
|
+
Set fc = Range(Ws.Cells(i, 3), Ws.Cells(i, MCol)).FormatConditions(1) ' 1 つ目の条件付き書式を取得
|
23
28
|
fc.Interior.ColorIndex = xlNone '条件式に一致する場合、『背景色を消去』する
|
29
|
+
For j = 12 To 16 Step 2 '数値の間処理をする
|
30
|
+
Ws.Cells(i, j).NumberFormatLocal = "G/標準" 'セルの表示形式を設定する
|
24
|
-
Next
|
31
|
+
Next
|
32
|
+
合計(CInt(Ws.Cells(i, 6).Value)) = 合計(CInt(Ws.Cells(i, 6).Value)) + CInt(Ws.Cells(i, 10).Value)
|
33
|
+
Next
|
34
|
+
|
25
35
|
End Sub
|
26
36
|
```
|
27
37
|
set fc …という数式を指定する行で止まってしまいます。
|
4
追加情報の記載
title
CHANGED
File without changes
|
body
CHANGED
@@ -24,4 +24,5 @@
|
|
24
24
|
Next
|
25
25
|
End Sub
|
26
26
|
```
|
27
|
-
set fc …という数式を指定する行で止まってしまいます。
|
27
|
+
set fc …という数式を指定する行で止まってしまいます。
|
28
|
+
デスクトップPCでコードを記述して、ノートPCで処理を実行する方式を採用しており、コードを記述したデスクトップPCでは条件付き書式が設定できたのですが、実行するノートPCにファイルをコピーして実行してみたところ、数式を利用した条件付き書式設定がプロシージャの不正となってしまいました。Excelのバージョン等で利用不可であれば諦めます。
|
3
コードの修正
title
CHANGED
File without changes
|
body
CHANGED
@@ -13,7 +13,7 @@
|
|
13
13
|
Dim MRow As Long
|
14
14
|
Dim MCol As Integer
|
15
15
|
Dim Ws As Worksheet
|
16
|
-
|
16
|
+
Private Sub shiwake1()
|
17
17
|
Set Ws = Worksheets(3)
|
18
18
|
MRow = Ws.Cells(Rows.Count, 3).End(xlUp).Row '最終行番号を取得する
|
19
19
|
MCol = Ws.Cells(2, 2).End(xlToRight).Column '右端列番号を取得する
|
@@ -22,6 +22,6 @@
|
|
22
22
|
Set fc = Range(Ws.Cells(i, 2), Ws.Cells(i, MCol)).FormatConditions(1) ' 1 つ目の条件付き書式を取得
|
23
23
|
fc.Interior.ColorIndex = xlNone '条件式に一致する場合、『背景色を消去』する
|
24
24
|
Next
|
25
|
-
|
25
|
+
End Sub
|
26
26
|
```
|
27
27
|
set fc …という数式を指定する行で止まってしまいます。
|
2
コードの修正
title
CHANGED
File without changes
|
body
CHANGED
@@ -23,4 +23,5 @@
|
|
23
23
|
fc.Interior.ColorIndex = xlNone '条件式に一致する場合、『背景色を消去』する
|
24
24
|
Next
|
25
25
|
end sub
|
26
|
-
```
|
26
|
+
```
|
27
|
+
set fc …という数式を指定する行で止まってしまいます。
|
1
subの記述
title
CHANGED
File without changes
|
body
CHANGED
@@ -13,6 +13,7 @@
|
|
13
13
|
Dim MRow As Long
|
14
14
|
Dim MCol As Integer
|
15
15
|
Dim Ws As Worksheet
|
16
|
+
private sub shiwake1()
|
16
17
|
Set Ws = Worksheets(3)
|
17
18
|
MRow = Ws.Cells(Rows.Count, 3).End(xlUp).Row '最終行番号を取得する
|
18
19
|
MCol = Ws.Cells(2, 2).End(xlToRight).Column '右端列番号を取得する
|
@@ -21,4 +22,5 @@
|
|
21
22
|
Set fc = Range(Ws.Cells(i, 2), Ws.Cells(i, MCol)).FormatConditions(1) ' 1 つ目の条件付き書式を取得
|
22
23
|
fc.Interior.ColorIndex = xlNone '条件式に一致する場合、『背景色を消去』する
|
23
24
|
Next
|
25
|
+
end sub
|
24
26
|
```
|