[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]
『セルの書式について』(メロン)
またまた申し訳ありません。 今sheet1のG14〜J14セルまでが結合されていて、折り返して表示と設定されています。 ここに、別シートのあるセル内で改行されているセル(ここではA1セルとします)の内容をsheet1のG14セルに転記させたとき、行の高さが自動で変わるようにはできないでしょうか? Autofitなど使ってみましたが変わりません。
Sheets("sheet1").range("G14").value=Sheets("別シート").range("A1").value
1.丸ごとコピーしちゃう Sheets("別シート").range("A1").Copy Sheets("sheet1").range("G14")
2.「折り返して表示」を設定する Sheets("sheet1").range("G14").value=Sheets("別シート").range("A1").value Sheets("sheet1").range("G14").WrapText = True
(Yujin)
Yujinさんありがとうございます。 2.「折り返して表示」を設定する ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ですが、すでに設定してあります。 まるごとコピーしてみましたが、別シートは一つのセル内に入力されていて、転記させるsheet1のG14セルはG14〜J14までの結合セルです。だからなのか行の高さは変わりません。 他にできることはありますか? (メロン)
>G14〜J14セルまでが結合されていて 見逃してました。すみません。
Sub SAMPLE() Dim buf, STLen As Integer
Sheets("sheet1").range("G14").value=Sheets("別シート").range("A1").value STLen = Sheets("sheet1").Len(Range("G14").Value) With Sheets("sheet1").Range("G14:J14") buf = .EntireRow.Cells(3).Resize(, Columns.Count - 2).Formula .Worksheet.Rows(65536).Copy .EntireRow .Cells(1).Value = String(STLen, "x") .HorizontalAlignment = xlCenterAcrossSelection .VerticalAlignment = xlTop .WrapText = True .Merge .HorizontalAlignment = xlLeft .EntireRow.Cells(3).Resize(, Columns.Count - 2).Formula = buf End With Erase buf End Sub
少し強引ですが、65536行目が空白の行であれば大丈夫かと。
(Yujin)
Yujinさんありがとうございます。 STLen = Sheets("sheet1").Len(Range("G14").Value) でこのオブジェクトはプロパティーまたはメソッドをサポートしていませんと出ます。 エクセルのバージョンは2002なのですが、2002では使用できないのでしょうか? (メロン)
たびたびごめんなさい。直打ちしたもので、位置を間違えました。 STLen = Len(Sheets("sheet1").Range("G14").Value) これでいかがですか?
(Yujin)
[ 一覧(最新更新順) ]
YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki.
Modified by kazu.