下記↓のようなデータがあります。
=========
A B C
1 りんご なし みかん
2 なし
3 みかん りんご
=========
これを↓下記のようなデータにかえたいです。
=========
A
1 りんご,なし,みかん
2 なし
3 みかん,りんご
=========
元々後者のデータだったのですが、
作業のため区切り位置で前者のデータに加工しました。
が、元に戻す必要が出てきました・・・。
&を使ってやる方法だと
りんご,なし,みかん
なし,,
みかん,りんご,
となってしまうし、うまいやり方が思いつきません。
IF関数を使って、ブランクセルの場合は「,」をつけない、とかやれば
できそうな気もしますが、勉強不足でどういう関数を書いたらいいか分かりません・・・。
エクセルにお詳しい方、ご教授いただければ幸いです。
No.9
- 回答日時:
二つ考えてみました。
=CONCATENATE(A1,IF(B1="","","," & B1),IF(C1="","",","&C1))
=CHOOSE(COUNTA(A1:C1),A1,A1&"," &B1,A1&","&B1&","&C1)
3個以上になれば、ズラズラと長くする必要がありますが、上の方がスマートと感じます。
ふたつも考えてくださってありがとうございます!
関数をネストするのが苦手で・・
CONCATENATEって関数はじめてみました。勉強します。
回答がたくさん寄せられているのに気付かず
結局手作業でやってしまったのですが
次回同じ作業が発生した時にはぜひ試してみたいと思います。
ありがとうございました。
No.7
- 回答日時:
関数でやると式が長くなる。
VBAでCSVを「扱うとき、しょっちゅう出てくる課題なのでユ、ーザー定義関数を使いやってみる。
例データ
A2:C4の範囲
りんごなしみかん
りんご
りんごみかん
ーー
標準モジュールに
Function CSVC(a)
Dim cl
s = ""
For Each cl In a
If cl <> "" Then
s = s & cl & ","
End If
Next
CSVC = Left(s, Len(s) - 1) '最後の,を削除
End Function
--
この関数の使い方
シートの
E2セルに =csvc(A2:D2) D2はどの列まででも良いが本例ではD列までありえるとした場合
下方向に式を複写する。
結果
E列
りんご,なし,みかん
りんご
りんご,みかん
E列が結果です
No.6
- 回答日時:
こんばんは!
VBAになってしまいますが・・・
一例です。
Sheet1のデータをSheet2に表示するようにしてみました。
※ Sheet1のデータは1行目からあるとします。
画面左下のSheet1のSheet見出し上で右クリック → コードの表示 → VBE画面がでますので
↓のコードをコピー&ペーストしてマクロを実行してみてください。
(Alt+F8キー → マクロ → マクロ実行です)
Sub test() 'この行から
Dim i, j As Long
Dim str As String
Dim ws As Worksheet
Set ws = Worksheets(2)
For i = 1 To Cells(Rows.Count, 1).End(xlUp).Row
For j = 1 To Cells(i, Columns.Count).End(xlToLeft).Column
str = str & Cells(i, j) & ","
Next j
ws.Cells(i, 1) = Left(str, Len(str) - 1)
str = ""
Next i
ws.Columns(1).AutoFit
End Sub 'この行まで
以上、参考になれば良いのですが、
ご希望の方法でなかったらごめんなさいね。m(_ _)m
マクロまで書いてくださってありがとうございます!
回答がたくさん寄せられているのに気付かず
結局手作業でやってしまったのですが
次回同じ作業が発生した時にはぜひ試してみたいと思います。
ありがとうございました。
No.2
- 回答日時:
A列を挿入して A1セルに
=SUBSTITUTE(TRIM(CONCATENATE(B1," ",C1," ",D1," ",E1," ",F1," ",G1," ",H1," ",I1," ",J1," ",K1," ",L1," ",M1," ",N1," ",O1))," ",",")
下へオートフィル
A列をコピーして
メモ帳に貼り付け
または、形式を選択して貼り付け 値の貼り付け
No.1
- 回答日時:
一旦、csv形式のファイルにして保存し、・・・
=========
A B C
1 りんご なし みかん
2 なし
3 みかん りんご
=========
この Excelシートが、
=========
りんご,なし,みかん
なし
みかん,りんご
=========
というファイルになります。
そのcsv形式のファイルの一行を1セルに読み込む方法ではダメ(面倒)ですか?
ご回答ありがとうございます!
その作業はぜんぜん面倒ではないのですが、
やりかたが悪いのか、教えていただいた通りになりません。
わたしがやると・・・
csv形式にして保存
↓
エクセル(2007)で開いても同じようにセルはわかれたまま・・・
エクセルで開いたからくっついてくれないのかな?
と思ってメモ帳やワードパッドで開いてみましたが
今度は
なし,,
みかん,りんご,
という感じで後ろに,がついてしまいます。
なにか間違ってますでしょうか?
あるいは
作業列を足したり、何ステップか踏んだりしてもいいので
ほかのやり方はありますか?
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) CSVファイルがカンマ区切りにならない。対処法を教えていただきたいです。 仕事でSMS一斉送信ができ 2 2022/07/01 21:24
- Excel(エクセル) エクセル、セルの分割について 回答お願いいたします。 画像のように一つのセルを2つに分割する方法をご 3 2022/06/20 10:35
- Visual Basic(VBA) エクセルマクロでアニメを作る方法を教えてください。 1 2023/02/07 14:27
- Excel(エクセル) Excelで全クラスのランキング表を作成したい 4 2022/05/24 15:28
- Excel(エクセル) エクセルに詳しい方 よく読んでからのご回答お願いします 外部からデータが来ますが、日付が202201 7 2022/06/29 16:15
- Excel(エクセル) 名前と日付が一致する箇所にフラグを立てる関数が知りたいです 4 2022/08/11 02:24
- Visual Basic(VBA) Excel VBA 最終行を取得しVlookup関数をコピーする方法をコーディングで教えてください。 3 2023/05/11 13:14
- HTML・CSS WEBサイトの構築。表示データとWEBデザインを分離する考え方を専門用語・業界用語では何と言うか? 8 2022/09/27 09:16
- Excel(エクセル) エクセルで沢山のレコードの最後に追記するには? 7 2023/04/10 13:27
- Visual Basic(VBA) 列と行の名前(重複あり)が交差するセルに、データを入力したい 3 2022/06/12 11:17
このQ&Aを見た人はこんなQ&Aも見ています
-
プロが教える店舗&オフィスのセキュリティ対策術
中・小規模の店舗やオフィスのセキュリティセキュリティ対策について、プロにどう対策すべきか 何を注意すべきかを教えていただきました!
-
エクセルで「データ」の「区切り位置」について
その他(Microsoft Office)
-
exeファイルの中身を見ることは可能ですか?
フリーソフト
-
Winmerge ファイルの中身は同じなのに黄色くなる
その他(OS)
-
-
4
Enterキーでマクロを起動さす。
その他(ソフトウェア)
-
5
コマンドプロンプトの「%1」と「%~1」の違いがわからない
その他(プログラミング・Web制作)
-
6
エクセルのエラーメッセージ「400」って?
Visual Basic(VBA)
-
7
EXCELでコピーしたグラフのデータ範囲変更について
Excel(エクセル)
-
8
Tera Termでのコマンド流し込みの際の文字欠け、不要文字挿入
サーバー
-
9
Excelのセルにユーザー名を表示する方法
Excel(エクセル)
-
10
エクセル:マクロ「Application.CutCopyMode = False」って?
Excel(エクセル)
-
11
Excelでcsvやtxtで保存する時にダブルクォートが勝手に付く
Excel(エクセル)
-
12
worksheet_changeがループする
PowerPoint(パワーポイント)
-
13
エクセルvba (ByVal Target As Range)について
Excel(エクセル)
-
14
アイコン選択時、常に複数選択されてしまう
Windows Vista・XP
-
15
Excelで"で囲む方法
Excel(エクセル)
-
16
エクセルのフィルタオプションで「ある文字列を含まない」条件は?
Excel(エクセル)
-
17
vlan internal allocation policy asc
セキュリティホール・脆弱性
-
18
ExcelVBAを使って、値がある場合は作業を繰り返し実行するプログラムを作成したい。
Visual Basic(VBA)
-
19
excelで、スクロールをすると限りなく下に行き、ワークシートが大きく
Excel(エクセル)
-
20
Excelで[表1]にあって、[表2]にないものを抽出する関数
その他(Microsoft Office)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Excelで隣のセルと同じ内容に列...
-
Excel関数:「0」を除いた標準...
-
【エクセル】区切り位置で分割...
-
値の入っているセルのうち、一...
-
《エクセル2000》重複している...
-
エクセルに入力された日付「S40...
-
Excelのマクロで行を間引きたい
-
複数の候補列から、検索値と一...
-
SUMIFとCOUNTIFの違いについて
-
SUMIFで数値が入力されているセ...
-
ピボットテーブル 0個の行を...
-
エクセル マクロ 連続する空...
-
A and B or Cの合計の出し方
-
エクセルで平均値を出すとき
-
ピボットで複数の区切りでグル...
-
excel vba 複数項目の集計
-
Excelで順番を逆に
-
Excelで複数列かつ複数行分の一...
-
Excel関数で、範囲内の最後のセ...
-
Excelのマクロでソートがうまく...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Excelで隣のセルと同じ内容に列...
-
Excel関数で、範囲内の最後のセ...
-
Excel関数:「0」を除いた標準...
-
【エクセル】区切り位置で分割...
-
エクセル関数について教えてく...
-
エクセルで何種類のデータがあ...
-
SUMIFで数値が入力されているセ...
-
エクセルに入力された日付「S40...
-
ピボットテーブル 0個の行を...
-
値の入っているセルのうち、一...
-
【Excel】歯抜けデータの集約
-
エクセル、正数のみの集計[(負...
-
複数の候補列から、検索値と一...
-
Excel:合計が一番上になる形で...
-
エクセル 8ケタの数字から日数...
-
更新前と更新後の差分をVBAを使...
-
Excelのマクロで行を間引きたい
-
エクセルVBAを使ってセルに日付...
-
《エクセル2000》重複している...
-
SUMIFとCOUNTIFの違いについて
おすすめ情報