
No.3ベストアンサー
- 回答日時:
前提条件
見出し行: 1行目3列(A1~C1)
データ行: 2行目以降
キーの列: A列
とした場合、
未使用列(今回は最終列C列の隣、D列使用)に各行の高さを入れておき
ソート後、その値で高さを再設定してもいいですね。
'------------------------------------------
Sub Test()
Dim R As Long
Dim LastRow As Long
Dim myRange As Range
Application.ScreenUpdating = False
LastRow = Cells(Rows.Count, "A").End(xlUp).Row
Range("D:D").ClearContents
For R = 2 To LastRow
Cells(R, "D").Value = Rows(R).RowHeight
Next R
Set myRange = Range("A1", Cells(LastRow, "D"))
myRange.Sort _
Key1:=Range("A2"), Order1:=xlAscending, Header:=xlYes, _
OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _
SortMethod:=xlPinYin
For R = 2 To LastRow
Rows(R).RowHeight = Cells(R, "D").Value
Next R
Range("D:D").ClearContents
Application.ScreenUpdating = True
End Sub
'--------------------------------------------
この回答へのお礼
お礼日時:2009/02/08 15:22
で、出来ました!!有難うございます。VBA初心者の私としてはrangeオブジェクトを使ったこのやり方はとても難しく、自分では書くことが出来ません。
コメントに書かれていたセルの高さを記入し、後でその値を元にセルの高さを調整する方法は良いですね。もう何ヶ月も考えて、よく分からなかったので投げ出す寸前でした。本当に感謝です。明日から仕事がバリバリ進みそうです。
No.2
- 回答日時:
昇順で並べ替えるサンプルマクロです。
使えるかどうか、ダミーのシートでテストしてみてください。
Sub test1()
Dim i As Long
Dim j As Long
For i = 1 To Range("A1:A10").Count
For j = 1 To Range("A1:A10").Count - 1
If Range("A1:A10").Item(j).Value > Range("A1:A10").Item(j + 1).Value Then
Range("A1:A10").Item(j + 1).EntireRow.Cut
Range("A1:A10").Item(j).EntireRow.Insert Shift:=xlDown
End If
Next j
Next i
End Sub
No.1
- 回答日時:
Excelでブラウザでプレビューしたものをコピーして貼り付けるとか
PowerPointで 編集 - 形式を選択して貼り付け - 書式なしテキスト
または、いったんメモ帳に貼り付けてから メモ帳上でもう一度コピーそして貼り付けとか
で対処できませんか?
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
EXCELで2つの数値のうち大きい...
-
エクセル 複数の条件での検索
-
エクセルで、2種類のデータを...
-
excelで、1つのセルに入ってい...
-
エクセルに入力した文字列に句...
-
エクセルで特定の文字が入って...
-
Excel 頭に「0」がついている...
-
【Excel2002】列を固定して縦ス...
-
連続データを1行おきに貼り付け...
-
excelで合計の異なる得点率の算...
-
数値の列から偶数のみを抽出す...
-
WEEKDAY 空白も7になってしまう
-
Excel 指定行までコピーをおこ...
-
Excelで中央揃えが出来ない?
-
エクセルで時刻(8:00~20:00)...
-
エクセル(勝手に太字になる)
-
エクセルかグーグルスプレッド...
-
エクセルで文字が混じった数字...
-
ある一定時間を超えた場合の超...
-
エクセルで二つの数字の小さい...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
EXCELで2つの数値のうち大きい...
-
エクセルで、2種類のデータを...
-
エクセルで特定の文字が入って...
-
桁の違う数値での並び替え
-
Excel 指定行までコピーをおこ...
-
Excelで中央揃えが出来ない?
-
エクセルに入力した文字列に句...
-
エクセルのまとめてカッコをつ...
-
excelで、1つのセルに入ってい...
-
Excel 頭に「0」がついている...
-
数値の列から偶数のみを抽出す...
-
セル内文章から、英数字のみ取...
-
Excelのデータ間引きについて
-
ある列のセルに特定の文字が入...
-
Excelの特定のセルを1つおきに...
-
エクセルで、数値の範囲で仕分...
-
Excel強制終了
-
連続データを1行おきに貼り付け...
-
エクセル、11と1の区別
-
マクロ(Excel)で上下のセルの...
おすすめ情報