【先着1,000名様!】1,000円分をプレゼント!

エクセルの並び替えで、一部のセルを結合している時、「この操作には、同じサイズの結合セルが必要です」というメッセージがでます。
セルを結合している時はできないのでしょうか?  できる方法があれば教えて下さい!!  宜しくお願いします。

このQ&Aに関連する最新のQ&A

A 回答 (3件)

◆A列が2行づつ結合されている場合


  A   B
1  5  a
2     あ
3  4  b
4     い
5  7  c
6     う
7  3  d
8     え

■手順■
1)A列の書式をB列にコピー (形式を選択して貼り付けで「書式」を選択)
2)A列でソート
3)B列の結合セルを解除します
    • good
    • 7
この回答へのお礼

上記の方法で出来ました。
早速の回答有難うございました!!

お礼日時:2006/10/31 15:26

セルを結合していても出来ますが、その場合同じサイズの結合セル同士である必要があります。


横にだけ結合しているのであれば、セルの書式設定から結合を解除して、横位置より「選択範囲内で中央」を選び、再度並び替えで出来ます。
しかし、縦にも結合している場合は、出来ません。
    • good
    • 3
この回答へのお礼

回答有難うございます。

お礼日時:2006/10/31 15:22

Excel 2002 です。


結合していてはできませんね。
セルの結合は「表を修飾する表現のための機能」であり、ソートは「表をデータとして取り扱うための機能」ですので。
    • good
    • 3
この回答へのお礼

回答有難うございます。

お礼日時:2006/10/31 15:22

このQ&Aに関連する人気のQ&A

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています

このQ&Aを見た人が検索しているワード

このQ&Aと関連する良く見られている質問

Q結合したセルの並び替え(エクセルVBA)

いつもお世話になっております。

エクセルVBAについてお尋ねします。

仕事でエクセルによって、各担当者ごとの業務報告書を作成しております。
仕様を簡単に説明させていただくと。
Sheet2以降に各担当者ごとの業務報告書があり、その集計をSheet1の総括にて行っております。
各担当者のシート様式は、日付ごとにAAA項目、BBB項目、CCC項目等の項目があり、それぞれに対して担当者が記載していくようになっております(添付ファイル参照)
総括のシートも様式は担当者の様式と同じです。

VBAによって、Sheet2以降の項目を総括に転記するところまでは出来たのですが(ちょうど添付ファイルのように日付がランダムに並んでいる状態です)
この後の、並び替え作業の方法が分かりません。セルの結合を行っている箇所もあるのでSortも出来そうに無いですし・・・。
現在は、添付ファイルのようにA列に日付順の順位を表記した状態で止まっております。

並び替えの方法をご指導願います。

また、並び替えが完了した後で、重複する行(添付ファイルの4月2日の箇所)を削除する方法があれば、一緒にご指導をお願いいたします。

初歩的な質問で申し訳ありませんが、よろしくお願いいたします。

いつもお世話になっております。

エクセルVBAについてお尋ねします。

仕事でエクセルによって、各担当者ごとの業務報告書を作成しております。
仕様を簡単に説明させていただくと。
Sheet2以降に各担当者ごとの業務報告書があり、その集計をSheet1の総括にて行っております。
各担当者のシート様式は、日付ごとにAAA項目、BBB項目、CCC項目等の項目があり、それぞれに対して担当者が記載していくようになっております(添付ファイル参照)
総括のシートも様式は担当者の様式と同じです。

VBAによって、Sheet2以...続きを読む

Aベストアンサー

折角マクロを使ってるのですから、丁寧にマクロを動かしていけば簡単にやってくれます。


sub macro1()
 dim lastRow as long
 dim r as long

’並べ替え準備
 lastrow = range("C65536").end(xlup).row
 range("B:B").unmerge
 range("B2:B" & lastrow).specialcells(xlcelltypeblanks).formular1c1 = "=R[-1]C"

’並べ替え
 range("B2:D" & lastrow).sort key1:=range("B2"), order1:=xlascending, header:=xlno

’復元
 application.displayalerts = false
 for r = lastrow - 2 to 2 step -3
  cells(r, "B").resize(3, 1).merge

 ’if application.countif(range("B2:B" & r), cells(r, "B").value ) > 1 then cells(r, "B").resize(3, 1).entirerow.delete shift:=xlshiftup

 next r
 application.displayalerts = true
end sub




>重複する行(添付ファイルの4月2日の箇所)を削除する方法

(上述でとりあえず止めてあるようにして)「(2つ目以降の)4月2日の3行を無造作に削除」してしまっていいのか、C列やD列の記載内容を含めて「重複」を判断する必要があるのか、具体的な状況を添えて「別途のご相談として」投稿し直して下さい。

折角マクロを使ってるのですから、丁寧にマクロを動かしていけば簡単にやってくれます。


sub macro1()
 dim lastRow as long
 dim r as long

’並べ替え準備
 lastrow = range("C65536").end(xlup).row
 range("B:B").unmerge
 range("B2:B" & lastrow).specialcells(xlcelltypeblanks).formular1c1 = "=R[-1]C"

’並べ替え
 range("B2:D" & lastrow).sort key1:=range("B2"), order1:=xlascending, header:=xlno

’復元
 application.displayalerts = false
 for r = lastrow - 2 to 2 step -3
  cel...続きを読む

Qエクセルでのデータの並べ替え

くわしい方、教えていただけないでしょうか?
ネットで検索しましたが、解決するような記事が見つかりませんでした。

添付画像のような表を作成しております(実際はもっと下にたくさん入力が続いてます)。

やりたいことは、この表にどんどんデータを入力していったときに、
グループバラバラなので、データの並べ替えでグループ名ごとにひとかたまりにして並べ替えたいのです(降順でも昇順でも、どちらでもいいです。でもできれば、グループ内で、氏名があいうえお順とかになるとすごく嬉しいです・・・・)

ですが、今の状態で並べ替えようとすると、「この操作には、同じサイズの結合セルが必要です」とエラーが出ます。

エクセルにあまり詳しくないですが、おそらくこれは、一人分のデータがA列とB列は1行ずつなのにC列で2行あるからだと思っているのですが、どうしても、C列は2行必要なので(誕生日のデータだけなら、D列に書けばいいのですが、C列にはほかにも書きたいデータがあってここは2行必要なんです)


この場合、どのようにしたら、うまく並べ替え(2行をひとかたまりと認識して)できるのでしょうか?

どなたかご教授してくださると嬉しいです。

くわしい方、教えていただけないでしょうか?
ネットで検索しましたが、解決するような記事が見つかりませんでした。

添付画像のような表を作成しております(実際はもっと下にたくさん入力が続いてます)。

やりたいことは、この表にどんどんデータを入力していったときに、
グループバラバラなので、データの並べ替えでグループ名ごとにひとかたまりにして並べ替えたいのです(降順でも昇順でも、どちらでもいいです。でもできれば、グループ内で、氏名があいうえお順とかになるとすごく嬉しいです・・・・)
...続きを読む

Aベストアンサー

こんばんは!

並び替え・集計等々はセルの結合があると厄介ですね!

一番良いのはセル結合がない表を作り替えるコトなのですが、
すでに表が作成済みだとすると

一旦結合を解除 → 空白セルにもデータを入力 → 並び替え → セルの再結合
といった処理が必要になると思います。

これを手作業で!となると大変ですので、VBAでやってみました。

画面左下の操作したいSheet見出し上で右クリック → コードの表示 → VBE画面に
↓のコードをコピー&ペーストし、Excel画面に戻ってマクロを実行してみてください。
(Alt+F8キー → マクロ → マクロ実行です)

Sub 並び替え() 'この行から
Dim i As Long
Application.ScreenUpdating = False
'セルの分割
For i = 2 To Cells(Rows.Count, 1).End(xlUp).Row Step 2
With Cells(i, 1)
.UnMerge
.Offset(, 1).UnMerge
.Offset(1) = Cells(i, 1)
.Offset(1, 1) = Cells(i, 2)
End With
Next i
Cells(1, 1).CurrentRegion.Sort key1:=Cells(1, 1), order1:=xlAscending, Header:=xlYes _
, key2:=Cells(1, 2), order2:=xlAscending, Header:=xlYes

'セルの再結合
For i = 2 To Cells(Rows.Count, 1).End(xlUp).Row - 1 Step 2
Application.DisplayAlerts = False
With Cells(i, 1)
.Resize(2, 1).Merge
.Offset(, 1).Resize(2, 1).Merge
End With
Next i
Application.ScreenUpdating = True
End Sub 'この行まで

※ 質問通りに1行目がタイトル行でデータは2行目以降にあり、A・B列は2行ずつ結合されているとします。
こんな感じではどうでしょうか?m(_ _)m

こんばんは!

並び替え・集計等々はセルの結合があると厄介ですね!

一番良いのはセル結合がない表を作り替えるコトなのですが、
すでに表が作成済みだとすると

一旦結合を解除 → 空白セルにもデータを入力 → 並び替え → セルの再結合
といった処理が必要になると思います。

これを手作業で!となると大変ですので、VBAでやってみました。

画面左下の操作したいSheet見出し上で右クリック → コードの表示 → VBE画面に
↓のコードをコピー&ペーストし、Excel画面に戻ってマクロを実行してみてくださ...続きを読む

QExcel 結合されたセルへの貼り付けについて

Excelにおいて、結合されていないセルのデータ(複数)を一度にコピー&ペーストしようと考えていますが、ペースト先は結合されたセルとなっております。

何かいい対策案はありませんか。

Aベストアンサー

結合セルの大きさはどうなっていますか。
同じサイズなら
最初の結合セルに、#A1 として下方にフィルコピーすると
#A1
#A2
#A3
#A4
#A5


というようになります。
範囲選択状態のまま、編集メニューの「置換」で
#

=
に、「すべて置換」ればセル参照式になります。
続けて、範囲選択状態のまま、コピーして
その場で「形式を選択して貼り付け」の「値」で貼り付けます。

QEXCEL で複数行を1単位としてソートかけたいのですが

EXCEL で複数行を1単位としてソートかけたいのですが
ご存知の方教えてください。

例えば

第8号
  安部なつみ
  東京都○○区
  090-1234-5678
第3号
  井川遥
  千葉県ちば市○○町
  080-1234-5678
第4号
  上戸綾
  群馬県○○市
  090-9876-5432

こんな感じで 4行1単位のデータを号でソートできませんか?

よろしくお願いします

Aベストアンサー

補助列を使用して、補助列を基準に並べ替える方法で、

第8号 が A1 として 空いている列の1行目へ
=OFFSET(A$1,(INT(ROW(A4)/4)-1)*4,)&"-"&MOD(ROW(A4),4)+1 を、オートフィルで必要分下へ。

第8号 が A3 としたら 空いている列の3行目へ
=OFFSET(A$3,(INT(ROW(A4)/4)-1)*4,)&"-"&MOD(ROW(A4),4)+1 を、オートフィルで必要分下へ。

第8号-1,第8号-2,第8号-3,第8号-4,第3号-1,第3号-2,第3号-3,第3号-4・・・と補助列に表示されます。(数式を、値の貼り付けで削除した方が良いと思います)

QエクセルのIF関数で、文字が入力されていたならば~

エクセルのIF関数で文字が入力されていたならば~、という論理式を組み立てたいと思っています。

=IF(A1="『どんな文字でも』","",+B1-C1)

A1セルに『どんな文字でも』入っていたならば、空白に。
文字が入っていなければB1セルからC1セルを引く、という状態です。

この『どんな文字でも』の部分に何を入れればいいのか教えてください。

またIF関数以外でも同様のことができれば構いません。

宜しくお願いします。

Aベストアンサー

=IF(ISTEXT(A1),"",B1-C1)

でどうでしょうか?

Qエクセルで打ち込んだ数字を自動で別シートに表示したい

エクセルでセルに打ち込んだ数字を自動で別シートに表示できる方法があれば、教えてください。

例えば、シート1のC1に5を打ち込んだら、シート2のD2にシート1で打ち込んだ5が自動で表示される。

また1列すべてを自動で表示させる場合、一つのセルの時と違いがありましたら教えてください。よろしくお願いします。

Aベストアンサー

こんばんは。
入力したセルの値を合計とかでなくて、
純粋に別のシートに自動的に表示したいのであれば、
以下の方法があります。

1.1つのセルだけの場合
例)シート1のC1に5を打ち込んだら、
  シート2のD2にシート1で打ち込んだ5が自動で表示される

⇒シート2のD2のセルをアクティブにして「=」を入力
 した後、シート1のC1をクリックする。
 そうするとD2のセルに「=Sheet1!C1」と表示され、値が自動的に
 表示されるようになります。

2.1列全てコピーしたい場合。
  コピー&リンク貼り付けを使うと便利です。

例)例)シート1のC1~C5に何かを入力したら、
  シート2のD2~D7にシート1で打ち込んだものが自動で表示される

  シート1にあるコピー元のセルを範囲選択して、
  シート2のD2の上で「右クリック」⇒「形式を選択して貼り付け」
  をクリックします。

  そして出てきた小さな画面の左下にある「リンク貼り付け」という
  ボタンをクリックすると完成です。
  試してみてください。。

  念のためにリンク貼り付けを図解しているURLを載せておきます。
  参考にしてみてくださいね。。
  http://www.geocities.jp/office_inoue/excel/eq21.htm

こんばんは。
入力したセルの値を合計とかでなくて、
純粋に別のシートに自動的に表示したいのであれば、
以下の方法があります。

1.1つのセルだけの場合
例)シート1のC1に5を打ち込んだら、
  シート2のD2にシート1で打ち込んだ5が自動で表示される

⇒シート2のD2のセルをアクティブにして「=」を入力
 した後、シート1のC1をクリックする。
 そうするとD2のセルに「=Sheet1!C1」と表示され、値が自動的に
 表示されるようになります。

2.1列全てコピーしたい場合。
  コ...続きを読む

Qエクセルで、条件に一致した行を別のセルに抜き出す方法

エクセルで、指定した条件に一致するセルを含む行をすべて抜き出す方法が知りたいです。

たとえば、

<A列> <B列> <C列>
7/1 りんご 100円
7/2 ぶどう 200円
7/2 すいか 300円
7/3 みかん 100円

このような表があって、100円を含む行をそのままの形で、
別のセル(同じシート内)に抜き出したいのですが。

7/1 りんご 100円
7/3 みかん 100円

抽出するだけならオートフィルターでもできますが、
抽出結果を自動的に、別の場所に、常に表示させておきたいのです。

初歩的な質問だと思いますが、検索しても分からなかったので、よろしくお願いします。

Aベストアンサー

同じ質問が結構よく出てますが、そんなに初歩的でもありません
別シートのA1セルに「100円」と入力し、そのシートの任意のセルに以下の式を貼り付けて下さい。後は、下方向、右方向にコピー。
日付のセル書式は「日付」形式に再設定してください

=IF(COUNTIF(Sheet1!$C:$C,$A$1)>=ROW(A1),INDEX(Sheet1!A:A,LARGE(INDEX((Sheet1!$C$1:$C$500=$A$1)*ROW(Sheet1!$C$1:$C$500),),COUNTIF(Sheet1!$C:$C,$A$1)-ROW(A1)+1)),"")

データ範囲は500行までとしていますが、必要に応じて変更して下さい

Qエクセル 表を大きく、紙いっぱいに印刷したい

エクセルで表を作りました。
印刷プレビューで確認したところ
用紙に対して表が小さく見栄えがしません。

一つ一ついじればできると思いますが、
簡単に、
用紙いっぱいにフォントも大きくし、表も大きくし、
印刷するやり方はありますか。
教えてください。

Aベストアンサー

CtrlキーとPのキーを同時に押すと「印刷」ダイアログが呼び出せます。その状態でAltキーとWのキーを同時に押すと「印刷プレビュー」が表示されますので、印刷のイメージがつかめます(必ずしもプレビュー通りには印刷されませんが)
印刷プレビュー画面の上にある、設定のボタンを押してあげれば、余白を少なくしたり、拡大縮小印刷をパーセンテージを指定しておこなえたりします。いずれにせよ、プレビューで確認しながら拡大率を決めていけばいいと思います。なお、「拡大縮小印刷」のところに「次のページ数に合わせて印刷をする」というチェックをいれて横1×縦1にしてあげれば自動で拡大縮小印刷ができる場合がありますが、やってみればわかりますが、特に縮小印刷の場合小さくなりすぎたりする場合もあります。

Qセルが結合されている場合のオートフィルタ

図のようにフィルタ抽出するセルが結合されています。
このままだと、3行ある下の2行は折りたたまれてしまいます。
該当する行を全て表示したい。
オートフィルタにこだわりませんが、何かいい知恵がありましたら、
よろしくお願いします。

Aベストアンサー

裏ワザ的になりますが、このようなケースでは、結合セルのすべてのセルに同じ値を埋め込むのが最も簡単な対応です。

例えば補助列を使い、F1セルが空白セル、F2セルに「=F1」と入力し、このセルを下方向に1つオートフィルします。

このF1:F3セルを選択して、右クリック「コピー」、結合セルのA2セルからB列の最終行までを選択して、右クリック「形式を選択して貼り付け」で「数式」と「空白セルを無視する」にチェックを入れて「OK」します。

これで結合セルすべてに同じ値が入力されていますので、結合セルが含まれるシートでもオートフィルタや数式参照が通常の操作や関数で簡単に対応できるようになります。

#Officeソフトはバージョンによって使用できる機能や操作方法が大きく異なりますので、質問の際には必ずバージョンを明記するようにしましょう。

QWordで、1ページを丸ごと削除するには?

1ページしか必要ないのに、真っ白な2ページ目がその下に表示されてしまった場合、この余分な2ページ目を一括削除(消去)する為に、何かいい方法があるでしょうか?

Aベストアンサー

<表示されてしまった場合>
これはそれなりに理由があるわけで、改ページや改行によって、次のページにまで入力が及んでいる時にそうなります。
特に罫線で表を作成し、ページの下一杯まで罫線を引いたときなどには、よくなる現象です。

さて、メニューの「表示」で段落記号にチェックが入っていないと、改行や改ページなどの入力情報が見えず、白紙のページを全て選択→削除してもそのままということが良くあります。
1 改行マークが白紙のページの先頭に入っていれば、それをBackSpaceで消してやる。
2 罫線を使っている場合は、それでも効果がない場合がありますが、その時は行数を増やしてやる。
などの方法があります。


このQ&Aを見た人がよく見るQ&A

人気Q&Aランキング