[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]
『複数のセルの数字を1つのセルに並べる』(ここや)
1234
5678
9101
2131
4151
6171
上記の複数のセルの数字を下記のようにひとつのセルに並べる場合、どのようにしたら楽に入力できますか?
1234; 5678; 9101; 2131; 4151; 6171
計算式はこれを使っています。
=A1&"; "&A2&"; "&A3&"; "&A4&"; "&A5&"; "&A6
< 使用 Excel:unknown、使用 OS:Windows8 >
現状の方法が一番楽かと。
http://www3.tokai.or.jp/excel/kansu/concatenate.htm
他にはユーザー定義関数とか。 (カリーニン) 2014/09/05(金) 19:05
ユーザー定義関数の例です。 手抜きなので飛び飛びのセルには対応してません。
'標準モジュール Function myconc(ByVal r As Range, moji As String) Dim c As Range For Each c In r If myconc <> "" Then myconc = myconc & moji myconc = myconc & c.Value Next c End Function
シートに↓を入力
=myconc(セル範囲,"挟む文字列")
=myconc(A1:A6,";") (カリーニン) 2014/09/05(金) 19:14
過去ログにも同様の回答があったのですが、作業用セルを使う例です。
A1:A6にデータが入っている場合
B1=A1 B2=B1&";"&A2 B2の式をB6までコピー
A B 1 1234 =A1 2 5678 =B1&";"&A2 3 9101 =B2&";"&A3 4 2131 =B3&";"&A4 5 4151 =B4&";"&A5 6 6171 =B5&";"&A6 (カリーニン) 2014/09/05(金) 20:33
私もカリーニンさん同様、ユーザー関数が一番簡単かなと・・・ 一個準備しておけば楽ですよ! Function ConRange(r As Range, dlm As String) As String ConRange = Join(Filter(Evaluate("TRANSPOSE(IF(" & r.Address & "<>""""," & r.Address & ",CHAR(2)))"), Chr(2), False), dlm) End Function
(稲葉) 2014/09/06(土) 08:55
複数セル範囲対応版です。
A1〜A9、B5の値を";"を挟んで連結します。
=myconc(";",A1:A9,B5)
Function myconc(ByVal moji As String, ParamArray r() As Variant) Dim c As Variant Dim cc As Range For Each c In r For Each cc In c If myconc <> "" Then myconc = myconc & moji myconc = myconc & cc.Value Next cc Next c End Function (カリーニン) 2014/09/06(土) 21:02
[ 一覧(最新更新順) ]
YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki.
Modified by kazu.