
No.4ベストアンサー
- 回答日時:
方法の1つとして、作業列を作って、そこで文字列を結合させ、もとの2列を削除するというやり方があります。
結合には「&」やCONCATENATE関数を使う方法があります。
これについては、過去の質問をご参照下さい。
http://oshiete1.goo.ne.jp/kotaeru.php3?q=2210850
別の方法として、マクロを使うやり方があります。こちらを使うと、結合したいセルを選択してマクロを実行するだけで済みますので簡単です。
こちらのページにコードが書かれていますので試してみて下さい。
29 セルを結合しその中の文字も結合するには
http://park11.wakwak.com/~miko/Excel_Note/99-02_ …
なお、コードの使い方について分かられないことがあれば、上記ページ文中の「マクロの使い方(1)標準モジュール」に手順が載っていますのでご参照下さい。
No.6
- 回答日時:
こんにちは。
KenKen_SP です。自分で使ってるものですが、ご参考までに。行・列方向のいずれにも対応し、選択範囲は複数あっても構いません。
【手 順】
1. [ALT]+[F11]キーで Visual Basic Editor (以下 VBE)起動
2. VBE 画面で、[挿入]-[標準モジュール]
3. 2. で開いた場所に、下記のソースコードをコピー&ペースト
4. VBE を閉じる
【使い方】
1. Excel 画面で対象セルを選択
2. [ALT]+[F8]または、[ツール]-[マクロ]-[マクロ]から実行
【補 足】
Join を使っているため、Excel2000 以上で動作します。ソースコードで
Const ROW_DELIMITER = vbLf → Const ROW_DELIMITER = ""
に書き換えると縦のセルを結合時にセル内改行されなくなります。
【ソースコード】
Sub CellsMerge_KeepValues()
Dim rngTarget As Range
Dim rngArea As Range
Dim Buf1() As String
Dim Buf2() As String
Dim lngR As Long, intC As Integer
Dim i As Long, j As Integer
' 行列の区切り文字設定(用途に合わせて適当に変更して下さい) -----------
Const ROW_DELIMITER = vbLf
Const COL_DELIMITER = ""
' --------------------------------------------------------------------
If TypeName(Selection) <> "Range" Or Selection.Count < 2 Then Exit Sub
If Application.CountA(Selection) = 0 Then
' 値がないので単純に結合させて終了
Selection.MergeCells = True
Exit Sub
End If
' 実行確認
j = MsgBox( _
Prompt:="選択範囲中に結合セルが含まれていると正確に処理" & vbLf _
& "できません。実行しますか?", _
Buttons:=vbOKCancel + vbExclamation + vbDefaultButton2, _
Title:="セルと書式化された値の結合")
If j = vbCancel Then Exit Sub
' メイン
On Error GoTo ERROR_HANDLER
Application.ScreenUpdating = False
Set rngTarget = Intersect(Selection, ActiveSheet.UsedRange)
For Each rngArea In rngTarget.Areas
With rngArea
If .Cells.Count > 1 Then
lngR = .Rows.Count: intC = .Columns.Count
ReDim Buf1(1 To lngR)
For i = 1 To lngR
ReDim Buf2(1 To intC)
For j = 1 To intC
' 書式を生かすので Text で
Buf2(j) = .Cells(i, j)(1).Text
Next j
' 列方向文字列連結
Buf1(i) = Join$(Buf2, COL_DELIMITER)
Erase Buf2
Next i
' セル結合
.ClearContents
.MergeCells = True
' 行方向文字列連結
.Value = Join$(Buf1, ROW_DELIMITER)
Erase Buf1
End If
End With
Next rngArea
TERMINATE:
Set rngTarget = Nothing
Exit Sub
ERROR_HANDLER:
MsgBox "Error(" & Err.Number & ") が発生しました" & vbLf _
& Err.Description, vbCritical
Resume TERMINATE
End Sub
No.5
- 回答日時:
(1)文字列の結合
(2)C1セルに=A1&B1
(3)A1とB1セルを結合
(4)A1にC1をコピーして、値だけ貼り付け
VBAの場合標準モジュールに
Sub test01()
d = Range("A65536").End(xlUp).Row
MsgBox d
For i = 2 To d
Cells(i, "A") = Cells(i, "A") & Cells(i, "B")
Cells(i, "B") = ""
Next i
End Sub
または
Sub test02()
d = Range("A65536").End(xlUp).Row
MsgBox d
Application.DisplayAlerts = False
For i = 2 To d
s = Cells(i, "A") & Cells(i, "B")
Range(Cells(i, "A"), Cells(i, "B")).MergeCells = True
Cells(i, "A") = s
Next i
Application.DisplayAlerts = True
End Sub
確認メッセージがうるさいですが、上記のようにDisplayArerts=Falseで無視できます。
No.3
- 回答日時:
二つのセル内容が文字の場合のことですね。
それでしたら手間がかかりますが下記のような手順を踏むしかないでしょう。セルA1が「傾斜」、セルB1が「角度」で、セルA1を「傾斜角度」にしたい場合を例にとって説明します。
1.セルB1をクリックしてF2キーを押す
2.「角度」の文字列をドラッグ(マウスの左ボタンを押したままマウスを動かす)する
3.マウスを右クリックして「コピー(C)」をクリックする
4.セルA1をクリックしてF2キーを押す
5.マウスを右クリックして「貼り付け(P)」をクリックする
6.エンターキーを押す
以上の操作により、セルA1の内容が「傾斜角度」となり、セルB1の内容は「角度」のまま残ります。もし一連の操作直後のセルB1を空白のセルにしたければ、3の操作で「切り取り(T)」をクリックします。
No.2
- 回答日時:
NO1です。
違うソフトの回答でした。すいません訂正です。正しくは↓
セルの結合
【問題】
セルの高さや幅を変えたとき、その行あるいは列のセルが全てその大きさに変わってしまいます。
ひとつのセルの高さあるいは幅だけ(例えばセルA1だけとか)を変えることは可能なのでしょうか?
【回答】
セルを結合します。
1.A1:B2を選択
2.Ctrl+1 (メニュー[書式]-[セル])
3.[配置]タブで[セルを結合する]にチェック
4.Enter
【解説】
セルを結合することで、体裁が良くなることもありますが、並べ替えができないなど、不都合な点もいくつかあるので注意が必要です
参考URL:http://www2.odn.ne.jp/excel/waza/format.html#SEC23
No.1
- 回答日時:
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
エクセル: セルの枠を超えて表示
-
セル内の一部の文字だけをハイ...
-
Excel countif関数で取り消し線...
-
マウスポインターが白十字のまま
-
エクセルファイルに _x000D_ と...
-
エクセルで1つのセルにスクロ...
-
エクセル2013で英単語を折り返...
-
Excelでcsvやtxtで保存する時に...
-
エクセルでセルを上下に結合し...
-
Excel入力で勝手にエンター押さ...
-
結合していないセルから結合し...
-
エクセル_関数_半角カナを全角...
-
JIS水準漢字の選別方法教えてく...
-
エクセルの行の下げ方
-
VBAで文章を指定の文字数で改行...
-
セルにぴったし写真を挿入
-
セルは大きくさせず、中の文字...
-
マウスを使わずにセルにカーソ...
-
エクセルの入力規則プルダウン...
-
全セルの末尾に改行(Alt+Enter...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
エクセル: セルの枠を超えて表示
-
Excel countif関数で取り消し線...
-
セル内の一部の文字だけをハイ...
-
セルは大きくさせず、中の文字...
-
エクセルファイルに _x000D_ と...
-
エクセルでセルを上下に結合し...
-
Excel入力で勝手にエンター押さ...
-
エクセルで文字を打つと下に、...
-
エクセルで1つのセルにスクロ...
-
エクセル2013で英単語を折り返...
-
エクセルの白黒の反転で困って...
-
全セルの末尾に改行(Alt+Enter...
-
エクセルで画像を透過させて画...
-
セルにぴったし写真を挿入
-
マウスポインターが白十字のまま
-
Excelでcsvやtxtで保存する時に...
-
マウスを使わずにセルにカーソ...
-
エクセルにおいてセル内の文字...
-
セルを結合しても、文字をセル...
-
CSVファイルでテキストの改行の...
おすすめ情報