2017-08-16 4 views
2

現在、1つのブックで目的の範囲をコピーして、空白のセルをすべて除外して別のブックに貼り付ける必要があるプロジェクトに取り組んでいます。空のセルを削除してVBAをコピーする際にデータを構造化する

これまでのところ、私はそれらをすべて隣の行に貼り付けることができましたが、適切に構造化することはできませんでした。

 For Each c In rngSourceRange.SpecialCells(xlCellTypeVisible) 
      If Len(c) <> 0 Then 
       rngDestination = c.Value 
       Set rngDestination = rngDestination.Offset(0, 1) 
      End If 
     Next c 

     Application.CutCopyMode = False 

形式は同じである必要があります。最初の19個のセルは、隣に横に並んでいなければならず、行を下に移動して最初の列に戻り、次の19個のエントリをリストします。今私は別のfor-loopを追加しようとしましたが、非常に役に立たない結果を生み出しました。

 For Each c In rngSourceRange.SpecialCells(xlCellTypeVisible) 
      If Len(c) <> 0 Then 
      For lcol = 1 To 19 
       wkbCrntWorkBook.Sheets("Tabelle1").Cells(lrow, lcol).Value = c.Value 
       lrow = lrow + 1 
      Next lcol 
      End If 
     Next c 

     Application.CutCopyMode = False 

このデータセットを適切に構成するのを手伝ってください。もしそれが助けになるのであれば、残りのコードを表示することができます。あなたに

答えて

1

この文の後の最初のコード、:

Set rngDestination = rngDestination.Offset(0, 1) 

次の文を追加してみてください:

If rngDestination.Column > 19 Then _ 
    Set rngDestination = rngDestination.EntireRow.Offset(1).Cells(1) 
関連する問題