プロが教えるわが家の防犯対策術!

下記の様に並んでるデータの改行を決まった法則で消したいのですが可能でしょうか?


【例】
1
2
3
4
5
6
7
8
9
10
11
12



123
456
789
101112

もし可能であれば、教えていただけると嬉しいです。
宜しくお願い致します。

A 回答 (4件)

だめだろうなぁと思いつつ


=SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(A1,CHAR(10),"☆"),"☆",CHAR(10),9),"☆",CHAR(10),6),"☆",CHAR(10),3),"☆",)
    • good
    • 0
この回答へのお礼

出来なかったですね・・・でもありがとうございます><

お礼日時:2016/02/18 18:16

こんばんは!



「改行」となっていますが、1セル内に改行されてすべてのデータが入っている訳ではないですよね?

質問文の場合1行目~12行目にデータがあり、3データずつをまとめたい!という解釈です。
元データはA1セル以降にあり、B列に表示させるとします。
VBAになりますが、一例です。

画面左下の操作したいSheet見出し上で右クリック → コードの表示 → VBE画面のカーソルが点滅しているところに
↓のコードをコピー&ペースト → Excel画面に戻り(VBE画面を閉じて)
マクロを実行してみてください。
Alt+F8キー → マクロ → マクロ実行です。

Sub Sample1() 'この行から//
Dim i As Long, cnt As Long
For i = 1 To Cells(Rows.Count, "A").End(xlUp).Row Step 3
cnt = cnt + 1
With Cells(i, "A")
Cells(cnt, "B") = .Value & .Offset(1) & .Offset(2)
End With
Next i
End Sub 'この行まで

※ 的外れならごめんなさい。m(_ _)m
    • good
    • 0
この回答へのお礼

やりたい事ができました!
本当助かりました、ありがとうございました!

お礼日時:2016/02/18 21:01

1つのセルの中で改行をしているのでしょうか。


それとも別のセルに書かれているのでしょうか。

1つのセルの中で改行をしているのであれば、
質問の例では
1つ目と2つ目の改行を削除し、3つ目はそのまま、
4つ目と5つ目の改行を削除し、6つ目はそのまま、
7つ目と8つ目の改行を削除し、9つ目はそのまま、
…のようになりますので、
関数を使う場合は、
SEACH関数とMID関数を組み合わせて文字を抜き取り結合させるか、
SUBSTITUTE関数で3・6・9の改行を残し他の改行コードを削除する方法になります。
(面倒なので、1つのセルの中で改行されていると明確になった時点で解答してみます)

他のセルに書かれているのであれば、セルの値を結合することになります。
A1セルから順番にA12セルまで値が並んでいたとすると、
関数なら、
=A1&A2&A3
のようになります。

ただしこれらは文字列になりますので注意してください。
数値として扱う必要があるなら、
=(A1&A2&A3)*1
のように「1」を乗算すると、見た目では分かりにくいですが数値に置き換えられます。
(当然ながら、数値にならない文字が入っていないことが条件)
    • good
    • 0
この回答へのお礼

私の説明不足でした。
申し訳ございません。

ありがとうございました!

お礼日時:2016/02/18 21:01

A1セルにすべて1~12が改行されて入っているとするとした場合、B1に以下の数式を入力してください


そのままでは改行されないので、さらにB1セルを右クリックし、「セルの書式設定」から「配置」タブの「折り返して全体を表示する」にチェックを入れてください。(添付図参照)


=SUBSTITUTE(MID(A1,1,FIND(",",SUBSTITUTE(A1,CHAR(10),",",3))-1),CHAR(10),"")&CHAR(10)&SUBSTITUTE(MID(A1,FIND(",",SUBSTITUTE(A1,CHAR(10),",",3)),FIND(",",SUBSTITUTE(A1,CHAR(10),",",6))-FIND(",",SUBSTITUTE(A1,CHAR(10),",",3))),CHAR(10),"")&CHAR(10)&SUBSTITUTE(MID(A1,FIND(",",SUBSTITUTE(A1,CHAR(10),",",6)),FIND(",",SUBSTITUTE(A1,CHAR(10),",",9))-FIND(",",SUBSTITUTE(A1,CHAR(10),",",6))),CHAR(10),"")&CHAR(10)&SUBSTITUTE(MID(A1,FIND(",",SUBSTITUTE(A1,CHAR(10),",",9)),LEN(A1)-FIND(",",SUBSTITUTE(A1,CHAR(10),",",8))),CHAR(10),"")
「エクセルで改行を消す方法」の回答画像4
    • good
    • 0
この回答へのお礼

私の説明不足でした。
申し訳ございません。

ありがとうございました!

お礼日時:2016/02/18 21:00

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!