|
目的:推移図に入力してある、値が異常の場合、正常値に修正。
現状、下記に記入してある項目1〜2まではしましたが、値が異常の場合、正常値に修正の仕方がわかりません。
知恵をお借りできませんでしょうか。
よろしくお願いいたします。
処理内容:
1.アクティブシートに入力してあるA3の文字を取得
2.listシートに記入してある文字列から検索して、ワークブック(推移図)を開く。
3.ワークブック(推移図)を開く。
4.セルF32〜AI32(31日まである場合はAJ32、それ以降の列は空欄)まで日付が入力されています。
5.セルF33〜AI33(31日まである場合はAJ33、それ以降の列は空欄)までデータ(数字)が入っています。
6.基準線が3つ有ります。(基準線は、1.+基準線(AY11に入力してある)、2.-基準線(AY15に入力してある)、3.センターライン(+基準線と-基準線の間、(AY13に入力してある))
7.+基準線を超えたら、+基準線とセンターラインの間にランダムな値に修正したい。
※可能なら、+基準線に寄ってるランダムな数字orセンターラインに寄ってるランダムな数字を選択できると有りがたい。
8.同様に-基準線を超えたら、-基準線とセンターラインの間にランダムな値に修正したい。
※可能なら、-基準線に寄ってるランダムな数字orセンターラインに寄ってるランダムな数字を選択できると有りがたい。
9.データ修正が終了したら、次のシートを同様に修正する
※データは、シートによって小数点5ケタまで使用しています。
Option Explicit
Sub error_correction()
Dim Target As String
Dim FilenameIn As Range
Dim FilenameOut As Range
Dim PathnameIn As String
Dim PathnameOut As String
Dim plus As Double
Dim minus As Long
Dim Cl As Long
Dim cal As Long
Cl = Cells(51, 13).Value
Target = Cells(3, 1).Value
Worksheets("list").Select
PathnameOut = Cells(13, 3).Value
Set FilenameIn = Range(Cells(3, 2), Cells(12, 2)).Find(Target, LookAt:=xlPart)
Set FilenameOut = FilenameIn.Offset(0, 1)
If FilenameIn.Offset(0, 2).Value <> "5F" Then
PathnameIn = Cells(13, 2).Value
PathnameOut = Cells(13, 3).Value
Else
PathnameIn = Cells(14, 2).Value
PathnameOut = Cells(14, 3).Value
End If
Workbooks.Open Filename:=PathnameOut & "\" & FilenameOut & ".xls"
plus = Cells(33, 14)
'下記以降の処理がわかりません。
Do
If plus >= Cells(11, 51).Value Then
Cells(33, 14).Value = plus - (Cells(11, 51) - Cells(13, 51))
If Cells(33, 14) >= Cells(11, 51) Then
Cells
End If
End If
Loop
Set FilenameIn = Nothing
Set FilenameOut = Nothing
End Sub
|
|