|
こんにちは。かみちゃん です。
まだご覧になっておられますでしょうか?
kanabunさんのアドバイスが続いていますので、私の出番はもうなさそうですが、
>> If strTrimedTekiyo = "合計" Then
>>の行番号は、
>>変数lngRowなのではないでしょうか?
>私もそういう受け取り方をしています。
>
>しかしながら、
>> Rows(lngRow + 1).Insert Shift:=xlDown
>を挿入しましたが、行挿入はできませんでした。
>何も変わらずでした。
>手を加えたりしたのですが、行挿入どころか「合計」が
>消えてしまったり、行挿入はできなかったりという状況です。
>
>> For lngRow = lngMaxRow To 31 Step -1
>>として、下方向から繰り返し処理したほうがいいと思います。
>下方向からの繰り返しという処理はわかったのですが、この処理を
>するとCSVファイルから逆(最下部)から拾ってくるのではない
>でしょうか?
>現に実行してみたら、CSVファイルの最下部がマクロが入っている
>シートの最上部に現れ、逆方向に挿入されていました。
CSVファイルの内容がよくわからないので、具体的なアドバイスが難しいのですが、
[61961]で提示したコードは、以下のようなシートレイアウトで実行すると、
きちんと「合計」の次の行に挿入されます。
新規ブックで一度ご確認いただいたほうがいいかもしれません。
A B
1 あ
2 い
3 う
4 合計
5 え
6 お
7 か
8 き
9 合計
10 く
11
Sub Sample2()
Dim lngRow As Long
Dim lngRowMax As Long
lngRowMax = Range("A" & Rows.Count).End(xlUp).Row
For lngRow = lngRowMax To 1 Step -1
If Cells(lngRow, 1).Value = "合計" Then
Rows(lngRow + 1).Insert Shift:=xlDown
End If
Next
End Sub
|
|