
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で質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) エクセルからビジオのリンク貼り付け 1 2023/03/30 17:51
- Excel(エクセル) エクセル、画像ファイル名の書かれたセル(複数個所)に画像を一括で表示させる方法 1 2023/04/19 00:19
- Excel(エクセル) エクセルで、特定のセルの内容を更新すると、別の特定セルに 更新日付が自動的に表示させる方法はあります 1 2022/11/14 21:03
- PowerPoint(パワーポイント) エクセルファイルが他のデーターソースへのリンクが含まれている場合の調べ方を教えてください。 2 2023/08/24 13:03
- Excel(エクセル) エクセル関数について 2 2022/04/13 18:25
- Visual Basic(VBA) エクセルのマクロについて教えてください。 2 2023/07/16 14:36
- Excel(エクセル) エクセルを活用した受注表作成の中で関数・数式を教えてください。 3 2022/07/23 08:14
- Excel(エクセル) 【VBA】指定フォルダに格納中のテキストファイルをエクセルで処理し結果のエクセルを新規フォルダに保存 1 2022/03/25 14:19
- Excel(エクセル) 複数のExcelブックのシート1の内容を1つのExcelブックにコピー貼り付けたいのでvbaコードを 7 2023/02/10 23:20
- Visual Basic(VBA) エクセルのマクロについて教えてください マクロを実行して 作業フォルダの中にある PDFファイル名を 3 2023/07/01 15:16
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
エクセル: セルの枠を超えて表示
-
Excel countif関数で取り消し線...
-
Wordの表でオートSUMをつかうと
-
セル内の一部の文字だけをハイ...
-
エクセル セル内でタブキーを...
-
エクセルで文字を打つと下に、...
-
エクセルについて セルに長文を...
-
エクセルの白黒の反転で困って...
-
エクセルでセルの中の色分け
-
エクセルのセルの文字の横に並...
-
エクセルのセルに日付を入れる...
-
エクセル 矢印などのペースト先
-
セルの幅について
-
エクセルで1つのセルにスクロ...
-
EXCEL2002でタブキー...
-
アンケート調査のための表を作...
-
エクセル初心者からの質問です...
-
エクセルで勝手に…初歩
-
エクセルファイルに _x000D_ と...
-
エクセルのオートシェイプで作...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
エクセル: セルの枠を超えて表示
-
Excel countif関数で取り消し線...
-
セル内の一部の文字だけをハイ...
-
セルは大きくさせず、中の文字...
-
エクセルでセルを上下に結合し...
-
マウスポインターが白十字のまま
-
エクセルで1つのセルにスクロ...
-
エクセルファイルに _x000D_ と...
-
エクセル2013で英単語を折り返...
-
Excelでcsvやtxtで保存する時に...
-
エクセルの白黒の反転で困って...
-
セルを結合しても、文字をセル...
-
Excel入力で勝手にエンター押さ...
-
CSVファイルでテキストの改行の...
-
エクセルの入力規則プルダウン...
-
エクセルで画像を透過させて画...
-
全セルの末尾に改行(Alt+Enter...
-
セルを結合して中央揃えを行う...
-
マウスを使わずにセルにカーソ...
-
エクセルのセル外改行は可能で...
おすすめ情報