• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:エクセルで、コピーに関するマクロ)

エクセルでコピーに関するマクロを作成する方法

このQ&Aのポイント
  • エクセルで特定の列の文字列をコピーするマクロを作成する方法についてご説明します。
  • コピー先のセルの位置を特定のパターンで指定し、文字列を連続的にコピーする方法を解説します。
  • コピー対象セル内の文字数が13文字以上になる場合でも、特定のパターンでコピーを続けることができます。

質問者が選んだベストアンサー

  • ベストアンサー
  • kokorone
  • ベストアンサー率38% (417/1093)
回答No.2

Dim base_cnt As Integer Dim base_cnt1 As Integer Dim base_word As String Dim base_length As Integer Dim word_cnt As Integer Dim dest_x As Integer Dim dest_y As Integer base_cnt1 = 0 For base_cnt = 0 To 99 base_word = Sheets("Sheet1").Range("CC1").Offset(base_cnt, 0) base_leng = Len(base_word) If base_leng > 0 Then dest_x = Int(base_cnt1 / 4) * 12 dest_y = (base_cnt1 Mod 4) + 1 For word_cnt = 1 To base_leng Sheets("Sheet1").Cells(dest_y, dest_x + word_cnt).Value = Mid(base_word, word_cnt, 1) Next word_cnt base_cnt1 = base_cnt1 +1 EndIf Next base_cnt

laminex
質問者

お礼

ご回答ありがとうございました。 今度は成功しました。

その他の回答 (1)

  • kokorone
  • ベストアンサー率38% (417/1093)
回答No.1

Dim base_cnt As Integer Dim base_word As String Dim base_length As Integer Dim word_cnt As Integer Dim dest_x As Integer Dim dest_y As Integer For base_cnt = 0 To 99 base_word = Sheets("Sheet1").Range("CC1").Offset(base_cnt, 0) base_leng = Len(base_word) dest_x = Int(base_cnt / 4) * 12 dest_y = (base_cnt Mod 4) + 1 For word_cnt = 1 To base_leng Sheets("Sheet1").Cells(dest_y, dest_x + word_cnt).Value = Mid(base_word, word_cnt, 1) Next word_cnt Next base_cnt

laminex
質問者

お礼

ご回答ありがとうございました。 実行してみましたが、以下の部分が反映されていないようでした。 >> 途中に空欄のセルもありますが、それはコピー対象から外します。

関連するQ&A

専門家に質問してみよう