1
セルの内容に基づいて列の可視性が変更されるSSISパッケージのExcelスクリプトに適用されるスクリプトを作成しようとしています。セルの内容に基づいてExcelが変更される
基本的には、レポートの名前を含む列があります。このレポートには、「MID」または「END」という単語が含まれていて、それが中間月か月末レポートかを判断します。今、私はスクリプトをその列のセルの内容を実行し、セルを表示または非表示にする必要がありますが、私は使用する整数が増加する前にIf Else
が適用されていないという問題があると考えています。 If
ステートメントの最初の条件であるかのように全体のリストを実行しますが、Else
ステートメントの場合はループバックしません。
セルの範囲内のセルの内容に基づいて変更する方が良い場合は、広範囲に使用されるのでお知らせください。
は、ここで私が現在持っているコードです:
'Mid Month/Month End Changes
ReportRange = .Range("B2", "B" & lastrow)
k = 0
For k = 0 To ReportRange.Rows.Count - 1
ReportCell = .Cells(2 + k, 2)
Report = ReportCell.Value
MidHrsCell = ReportCell.Offset(, 5)
EndHrsCell = ReportCell.Offset(, 6)
For Each Cell In ReportRange
If InStr(Report, "MID") > 0 Then
EndHrsCell.EntireColumn.Hidden = True
Else
MidHrsCell.EntireColumn.Hidden = True
End If
Next
Next
ありがとう、それは余分なループを削除しますが、残念ながら結果は同じです。私は、InStr(Report、 "MID")が正しい値(私がテストしているものの0)を引っ張っているのを見るためにテストしましたが、カラムは隠されていません。 –
気にしないでください。私はばかです。私は隠された列のコードの後にシート全体にオートフィッティングを適用していたセクションを持っていました。ループのおかげでありがとう! –