Excelで2行を1行に結合する方法
- Excelで2行の罫線枠中に上段:空白、下段:文字列とか、上段:文字列、下段:文字列のように様々な罫線枠内を1行に結合したいです。数段、数シートに渡って同様の形式があります。上下に結合する方法を教えてください。
- Excelで2行を1行に結合したいです。具体的には、罫線枠内に上段が空白で下段に文字列がある場合や、上段と下段に文字列がある場合、など様々な形式があります。同じ形式が複数の段落やシートに渡っている状況です。Excelで上下に結合する方法を教えてください。
- Excelで2行の罫線枠内に上段と下段の要素があり、それらを1行に結合したいです。同じ形式が複数の段落やシートで繰り返されています。Excel上で上下に結合する方法を教えてください。
- ベストアンサー
excelで2行を1行に
excelで2行の罫線枠中に上段:空白、下段:文字列とか、上段:文字列、下段:文字列のように様々な罫線枠内を1行に結合したいのですが、 ○○┌────┬────┬─────┬── 1行 │(空白)│文字列 │(空白) │ 2行 │ 文字列 │文字列 │ 数式 │ ○○└────┴────┴─────┴── この形式が数段、数シートに渡ってあります。 ○○┌────┬────┬─────┬── 1行 │(空白)│文字列 │(空白) │ ○○│ 文字列 │文字列 │ 数式 │ ○○└────┴────┴─────┴── 上記のように1行に上下に結合したいのですが、こんなことできるのでしょうか。 何卒、ご教授下さい。
- tetsujinn
- お礼率77% (77/100)
- オフィス系ソフト
- 回答数6
- ありがとう数3
- みんなの回答 (6)
- 専門家の回答
質問者が選んだベストアンサー
#5です。 多列の場合、シートを別にします。元をSheet1として Sheet2に目的のものを出します。Sheet2の書式は書式-セル-配置で「折り返して全体を表示する」にする。 Sheet2のA1に関数式 =IF(MOD(ROW(),2)=0,"",Sheet1!A1&REPT(" ",20-LEN(Sheet1!A1))&CHAR(10)&Sheet1!A2) と入れて、A1で+ハンドルをだし、第13列M列まで複写する。更にA1:M1を範囲指定し、Mで+ハンドルを出し、最終行まで引っ張る。 値を自分自身に複写して、式を消す。 セル結合のVBAは Sub test04() d = Range("A65536").End(xlUp).Row Application.DisplayAlerts = False For i = 1 To d Step 2 For j = 1 To 13 Range(Cells(i, j), Cells(i + 1, j)).Select Selection.MergeCells = True Next j Next i End Sub を実行する。
その他の回答 (5)
- imogasi
- ベストアンサー率27% (4737/17068)
例えばA1に「あ」、A2に「い」と値があるとして、A1:A2をセル結合すると、A1だけ残り、A2の値は捨てられます。 (1)これでは困るので、A2のデータをA1にもって来て 結合しなければなりません。 (2)A1に集約されても、それまでのA1:A2の値の上下位置関係を保って欲しいと言うのが要求でしょう。 これを実現するのも一工夫要ります。 (3)セル結合の操作ですが、関数式では出来ません。 関数の本質は、値を扱うもので、セルの挿入・削除・結合・書式・表示形式は設定出来ません。このことを肝に命じておくこと。無理な期待をし勝ちである。 それで沢山有ればセル結合の操作が面倒であるから、VBAででもやらないといけない。CTRL+Yも有り得るかもしれないが、確認メッセージも出る。A1.A2の一方のセルが空白であれば確認メッセージは出ないようである。 (例データ)A1:A4 東京都の知事は誰ですか 石原知事です 弟は誰でした? 裕次郎です。 (関数式) B列の書式を、書式-セル-配置で「折り返して全体を表示する」にする。 B1に=IF(MOD(ROW(),2)=0,"",A1&REPT(" ",20-LEN(A1))&CHAR(10)&A2) と入れる。20は上段の文字数の最大値を見積もったものです。 CHAR(10)を入れて入るところがポイントです。 これで奇数行に、次行と結合した文字列が出来る。 編集-コピー-編集-形式を選択して貼りつけ-値を 自分自身のセルに行い、式を消す。 (VBA) Sub Macro3() d = Range("A65536").End(xlUp).Row Application.DisplayAlerts = False For i = 1 To d Step 2 Range(Cells(i, "B"), Cells(i + 1, "B")).Select Selection.MergeCells = True Next i End Sub これをツール-マクロ-VBEで出るVBE画面のメニューで 挿入-標準モジュールで出る画面に上記をコピペする。 F5キーを押して実行する。 (結果)B1とB3は "東京都の知事は誰ですか 石原知事です" "弟は誰でした? 裕次郎です。" となりました。あと罫線を引いて完成。
お礼
す、すごい!! こんなことが出来るんですね。 大変役に立ちました。 あとは、アレンジしていけばいいですね。 そこで質問なんですが、これは、1列に対して次の1列に表示していますが、複数列を全て行なおうとするとどの様にするのですか。 すばらしい回答を得ても、尚こんな質問する無礼をお許し下さい。 ちなみに、13列です。
- konica
- ベストアンサー率28% (2/7)
「セルを結合して中央揃え」では出来ないのですか?
真中の文字列をみ落してました
補足
度々、ありがとうございます。 中列の上下文字列も、1行にして上下表示にしたいのです。
空列にデータ行分文字を入れます タイトル行を選択し「データ」-「フィルタ」-「オートフィルタ」 ▼で空白以外のセル データをコピーし新シートへ 元シートの内容を削除し戻す A列に1列挿入し降板をふる 降板をコピーし降板の後ろに貼り付ける 全体を選択し、「データ」-「並び替え」でA列を選択する
- cyobin_man
- ベストアンサー率24% (298/1216)
私にはできませんが 1 1行の中に 2行入力できるか? 2 関数などで一気にできるか という意味でしょうか?
補足
早速ありがとうございます。 関数、並び替えなどで、一気に出来ますか?
関連するQ&A
- Excelで奇数行を削除
題名通り、奇数行を一括に削除する方法をご存じの方はご教授下さい。 ○○┌────┬────┬─────┬── 1行 │(空白)│文字列 │(空白) │ 2行 │ 文字列 │文字列 │ 数式 │ ○○└────┴────┴─────┴── 3行 │(空白)│文字列 │(空白) │ 4行 │ 文字列 │文字列 │ 数式 │ ○○└────┴────┴─────┴── この形式が数段、数シートに渡ってあります。 ○○┌────┬────┬─────┬── 1行 │ 文字列 │文字列 │ 数式 │ ○○└────┴────┴─────┴── 2行 │ 文字列 │文字列 │ 数式 │ ○○└────┴────┴─────┴── 上記のように2行を1行にしたいのですが、一括でできるのでしょうか。 よろしくお願いします。
- 締切済み
- オフィス系ソフト
- エクセル印刷で上下の結合セルが別ページにならない方法?
エクセル2000です。 一枚のシートに表が複数あります。 表中のセルはすべて数式が入っています。 A列は続き番号がふってあります。 B列~E列は上下のセルが結合しています。(2行分) F列は結合していません。 G列は上下の結合あります。(2行分) このような様式の表が、同一シートに1行あけて上から下へ続いています。 しかも、計算結果により表中の行が空白になる場合がよくあります。 その場合、は表中の空白行は非表示になるようにマクロで設定しています。 このシートを印刷した場合、2行を上下で結合したセルが、別ページに分かれてしまうことがよくあります。計算結果で表示がかわるので改ページを事前に入れておけません。 結合セルがページで分割されないようにするにはどうしたらよいでしょうか?
- ベストアンサー
- オフィス系ソフト
- エクセル2007 結合セル
エクセル2007 結合セル 下の画像のようなエクセルシートを 練習用に2枚作成しました。 上段が月の入力フォームで、 下段が各個人の営業成績表です。 ここで、下段の成績表の1行目が B列からI列まで、セル結合されており その中に表題の( 月分)が表示されています。 ここの月の前の空白部分に上段の入力フォームの黄色で 入力した月の数字をを自動的に表示させることはできるのでしょうか。 結合させなければ、簡単にできたと思いますが、 結合している前提で、教えていただけるとありがたいです。 よろしくお願いします。
- ベストアンサー
- オフィス系ソフト
- エクセル VLOOP関数
エクセル初心者です。 エクセル2003を練習中なのですが 今、下画像の上段のようなデータのシートを作成しました。 シートは左の日付を3行セル結合しています。 このシートのデータを、画像下段の表のように 関数で表引きしたいのです。 下段の表は、左の日付を2行セル結合しています。 関数(VLOOPUP関数とINDEX関数)の使い方が、今一つ分かりませんでした。 どんな数式を入力していけばいいのでしょうか。 お願いします。
- ベストアンサー
- オフィス系ソフト
- エクセルの表引き?
こんにちは いつもお世話になっています エクセルの表引きについて教えてください。 実は表引きといえるかどうかわからないので、できるか、できないかだけでも知りたいです。 sheet1に次のデータがあります。 A B C 1 秋田 a 2 愛知 a 3 石川 a 4 愛媛 b 5 大分 b 6 鹿児島 b 7 香川 c 8 熊本 c A列は連番とは限りません、重複データはありません。 C列でグループ分けしてあり、第一条件でソートしてあります。 sheet2ではA列に10行ごとに黒枠罫線がひいてあるだけで、ほかにデータはありません。 この枠線の中にsheet1のC列のグループごとにA列のデータを振り分けたいのです。 sheet1のC列は昇順でソートしてありますのでsheet2へも、その順番で各枠線内の上から入力させたいです。 sheet2のA列へはC列のa,b,cの各データの個数より余分に枠罫線がひかれてあるので、入りきらないことはありません。 つまり、 sheet2に A 1 2 3 7行分空白(ここまで枠罫線) 4 5 6 7行分空白(ここまで枠罫線) 7 8 8行分空白(ここまで枠罫線) と入力させたいのです。 関数とか表引きではできないとすると、他の方法はあるでしょうか。 条件付書式でもできるでしょうか。 わかりづらい表現で申し訳ないですが、よろしくお願いします。
- ベストアンサー
- オフィス系ソフト
- 行に印のある列を残し他は列削除
上段の表の1行目の"●"印の列のみ表示し1行目空白は列削除し下段の表にしたいのですがどなたかVBAコードが解る方宜しくお願いします。
- ベストアンサー
- Visual Basic
- Excelで複数ページにわたり、特定の列・行を印字したい
Excel2002を使っています。 言葉で上手く説明できるか分からないのですが…下記のような事を行ないたいのですが、うまく出来ません。どうすればよいか教えて下さい。 <現在のシートの内容> ・A1~B2まで結合、C1~G2まで結合、H1~I2まで結合 ・3行目はA列のみに文字を入力 ・4,5行目は空白 ・6~7行目は2行2列ごとに結合し、最後(K、L、M列)のみ3列を結合 ・8行目以下は行では結合せず、6~7行目にあわせて列を結合し各セルに数値や文字を入力(A~M列まで) ・100行目までデータあり。途中、改ページあり。 <行ないたいこと> ・A1~I3までの内容とA6~M7までの内容を、全てのページの上部に印刷したい <試したこと> ページ設定の「シート」で「行のタイトル」「列のタイトル」を入力 ※「行のタイトル」は$6:$7、※「列のタイトル」は$A:$Mとしました <結果> ・A6~M7までの内容は全てのシートに上手く印字されましたが、 A1~I3の内容は1枚目のみでした <これは避けたい!ということ> ・ページが変わるごとにA1~I3までの内容とA6~M7までの内容をコピー&ペーストすること。 ※ファイルを見ている時は、途中に余計なものが入らないようにしたい。現状は、ウィンドウ枠の固定で7行目まで固定しています。 以上です どうすれば、上手く印刷できるでしょうか?
- 締切済み
- オフィス系ソフト
- エクセルの関数について
エクセルの関数についての質問です。 作業員が日々現場に行く月報のデータシートがあって、各氏名の行を日ごとに上下に分け上段に現場名、下段に日勤、半勤、夜勤と表示されています。 別シートに各現場ごとにその日に行った人数を、上段は日勤を1人半勤を0.5人として合計人数を表示、下段に夜勤の合計人数を表示、当てはまらない場合は空白と表示させたいのですが。 どなたかお分かりになる方、教えてください。 よろしくお願いします。
- 締切済み
- その他MS Office製品
- エクセルで下段だけの削除
教えて下さい エクセルで作成した表があります 行1 上段 行2 下段 行3 上段 行4 下段 この上段、下段の繰り返しで1000件はあります 下段の行のみを一気に削除をしたいのですが簡単に削除をする方法はありませんか? 全部単なる数字が入っているだけでどこにもセルの結合はありませんしマクロもありません 宜しくお願い致します
- ベストアンサー
- オフィス系ソフト
- 数式を奇数行と偶数行を別々に貼り付け!
数式を奇数行と偶数行を別々に張り付け の方法ってあるんですか?? Sheet1で計算表をつくっています。 B列~列Hまで1行と2行を結合さしていて、I列~X列は1行、2行別々です。 I列~X列に1行2行別々の数式をいれたいんです。 偶数行に =IF(Sheet2!AC52="","",IF(Sheet2!AC52<2,"<",ROUND(Sheet2!AC52,2))) として、2行・4行・6行・・・・ 奇数行に =IF(Sheet2!D52="","",IF(Sheet2!D52<Sheet2!$B52,Sheet2!$A52,ROUND(Sheet2!D52,4))) として、3行・5行・7行・・・・ でいう感じでしていきたいんですが、関数はありますか?? 関数以外でも方法があれば教えてください。 お願いします。
- ベストアンサー
- その他(プログラミング・開発)
お礼
無事、実行することが出来ました。 大変ありがとうございました。