すみません。VB6でExcelを操作するプログラムを作成しているのですが。
わからないところがあるので教えていただきたいのです。
左から右へセルを一つずつ参照していくのですが。
もしその一つ前のセルの一つ下のセルが空白の場合はそのその二つのセルを結合させたいのですが。。
1000 1001 1002 1003 1004 1005
1111 4444 5555 6666
ます、1001のセルを参照した場合、その前の一つ下のセル「1111」を参照して空白では
ないので、次のセル「1002」を参照したとき、その前の一つ下のセルは空白なので
「1001」のセルとその下のセルを結合したいのですが。
よろしくお願いします。
一つ前のセルを見るロジックは意味解らないけど?
様は移動列上段の列の下のセルがブランクなら上下結合って事なら
こんな感じでどうですか?
Dim oSheet As Worksheet 'ExcelSheet
Dim lCol As Long
Const clStartCol As Long = 1
Const clEndCol As Long = 255
Const cMoveRow As Long = 1
Const cChkRow As Long = 2
'CreateExcel(Appl,Book,Sheet)etc略
'カラム移動
For lCol = cStartCol To cEndCol
'シート参照
With oSheet
'カレント列二行目のブランク?
If .Cells(cMoveRow, _
lCol).Value = vbNullString Then
'範囲(行1:カレント列と行2:カレント列).結合
.Range(.Cells(cMoveRow, lCol), .Cells(cChkRow, lCol)).Merge
End If
End With
Next
↓訂正
Dim oSheet As Object'ExcelSheet
↓cMoveRowをcChkRow
If .Cells(cMoveRow, _
lCol).Value = vbNullString Then
でした。。
ツイート | ![]() |