• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:一つのセルの文字列を分解して別のシートへ)

一つのセルの文字列を分解して別のシートへ

このQ&Aのポイント
  • 一つのセルの文字列を分解して別のシートの指定したセルに一文字ずつ入力する方法について教えてください。
  • 別のシートにある祝日データを使用して、一つのセルの文字列を分解し、指定したセルに一文字ずつ自動で入力する方法を知りたいです。
  • マクロを使用して、一つのセルの文字列を分解し、別のシートの祝日データを参照しながら、指定したセルに一文字ずつ自動で入力することは可能でしょうか?

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

  • ベストアンサー
  • tom04
  • ベストアンサー率49% (2537/5117)
回答No.1

こんばんは! >F1のセルが2014/5/6なので・・・ 「こどもの日」は5月5日でお示しの配列だとE列になり、F列は振替休日だと思います。 それはさておいて、↓の画像のようなデータをSheet2に作成しておくとします。 Sheet1の1行目にシリアル値が入っているとしてのコードです。 標準モジュールです。 Sub Sample1() Dim i As Long, j As Long, lastRow As Long, lastCol As Long Dim str As String, c As Range, wS As Worksheet Set wS = Worksheets("Sheet2") With Worksheets("Sheet1") lastRow = .UsedRange.Rows.Count lastCol = .UsedRange.Columns.Count If lastRow > 1 Then Range(.Cells(2, 1), .Cells(lastRow, lastCol)).ClearContents End If For j = 1 To lastCol Set c = wS.Cells.Find(what:=.Cells(1, j), LookIn:=xlValues, lookat:=xlWhole) If Not c Is Nothing Then str = wS.Cells(c.Row, "A") For i = 1 To Len(str) With .Cells(2 * i + 1, j) .Value = Mid(str, i, 1) .HorizontalAlignment = xlCenter End With Next i End If Next j End With End Sub ※ 関数でないのでSheet1のデータ変更があるたびにマクロを実行する必要があります。m(_ _)m

AkB373
質問者

お礼

ご回答ありがとうございました。 無事に解決することができました!

関連するQ&A

専門家に質問してみよう