Web サイトの構造を含むワークシートを取得し、(列 1) ページの名前と (列 2) サイトのセクションを含む 2 つの列をワークシートに出力するモジュールを VBA で記述しようとしています。 (Visio で利用できるように)
私の既存のワークシートには、次のような構造が含まれています。
Root / Section / Sub-section / Page
Root / Section / Page
Root / Section / Sub-section / Sub-section / Page
つまり、各行は左側の列にページの祖先を示していますが、構造にはさまざまなレベルがあり、問題が複雑になっています。
これをループして、列 7 (ナビゲーションの最も深いレベル) から開始し、最初に左にループして空でないセルを見つけ、そのセルとその親を新しいシートにコピーします。列2に到達したら、ルートが含まれているため、下に移動します。これは 562 の最後の行まで続きます。
私のコードは以下のとおりですが、「While Isempty」行でエラーが発生しています。私は何を間違えましたか?
Sub directDescendent()
Dim readCol As Integer
Dim readRow As Integer
Dim writeRow As Integer
readCol = 7
readRow = 2
writeRow = 2
While readRow < 562
While IsEmpty(ActiveWorkbook.Sheets(2).Cells(readRow, readCol).Value)
readCol = readCol - 1
Wend
If readCol < 3 Then
readCol = 7
readRow = readRow + 1
End If
ActiveWorkbook.Sheets(3).Cells(writeRow, 1).Value = ActiveWorkbook.Sheets(2).Cells(readRow, readCol).Value
ActiveWorkbook.Sheets(3).Cells(writeRow, 2).Value = ActiveWorkbook.Sheets(2).Cells(readRow, readCol - 1).Value
writeRow = writeRow + 1
Wend
End Sub