質問: vbaを使って一つのセル内で文書を改行 現在vbaを使ってシート1の内容をシート2にコピーさせるもの作りました。↓ s.cells(r, 1).copy sheets("sheet2").range("a1") これでさらにシート2にコピーしたないようは 同じセル内で改行したいのです。 いわばalt+enterキーみたいな機能なのですが・・・ つまり出力がシート1の指定セルの内容が 『新年あけましておめでとう』なのですが、シート2は 『新年あけまして おめでとう』という内容を出力したいのですが、 改行のプログラムはわかりますでしょうか??m(_ _)m 簡単なプログラムでもいいのです。 もしわかれば他にも応用したいので、この例で行くと『て』という文字を判別して『て』という文字があったらその文字のあとを改行させたいのですができますでしょうか?
回答: こんばんわ。 改行は、「vbcrlf」を使えばできますね。 サンプルコードを下に載せて置きますので、asdasddさんの環境に合わせて改変してください。 注意事項として、セルの幅が狭いと、表示がうまくいかない事があります。 sub test() dim la as long, lb as long la = instr(sheets("sheet1").cells(1, 1), "て") '"て"の文字位置を調べる lb = len(sheets("sheet1").cells(1, 1)) '文字数を調べる if la > 0 and lb > la then selection.cells = left(sheets("sheet1").cells(1, 1), la) _ & vbcrlf & right(sheets("sheet1").cells(1, 1), lb - la) else selection.cells = sheets("sheet1").cells(1, 1) end if end sub