[[20160208085855]] 『TextToColumns の使い方について』(おおたわ) ページの最後に飛ぶ

[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]

 

『TextToColumns の使い方について』(おおたわ)

お世話になります。

TextToColumns の使い方についてですが、結果を別のシートには出力できないのでしょうか?
私のコードが間違っておりましたら申し訳ございません。

ws1 などは変数です。

例)

for i = 1 to 10
ws1.Range("A" & i).TextToColumns Destination:=ws2.Range("B" & 1), DataType:=xlDelimited, Other:=True, OtherChar:=":"
next i

お手数をおかけ致しますが、教えて頂けると助かります。

< 使用 Excel:Excel2013、使用 OS:Windows8 >


 内部の処理がどうなっているか分かりませんが、出来ないみたいですねぇ。

 ちなみに、提示されたコードだと、常にB1に上書きされ続けるよくわからないコードになってますね。

 最終的にどのような文字をどこに出力されれば満足されますか?
(稲葉) 2016/02/08(月) 09:20

 かぶったが。

  TextToColumnsはExcelの一般操作では区切り位置に該当する。

 一般操作の区切り位置でも表示先の指定に別シートを指定すると「表示先の参照が正しくありません」と表示され
 (名前定義やINDIRECT関数を使っても同じだった)設定できないので多分無理だと思う。
 同一シート内で行って移動するか、Split関数を使ってはどうか。

 P.S.
 ws2.Range("B" & 1)
 は
 ws2.Range("B" & i)
 のミスか?
(ねむねむ) 2016/02/08(月) 09:26

稲葉様ご連絡ありがとうございます。

("B" & 1), は ("B" & i),のまちがいです、すみません。

シート1のA1に登録されている文字を 分割して シート2の B1に出力したいのです。

TextToColumns では別のシートに結果を出力できないのでしょうか? Split を使うしかないのでしょうか?
(おおたわ) 2016/02/08(月) 09:29


ねむねむ様 ご連絡ありがとうございます。

はい、ミスです。すみません。
TextToColumns では別のシートに出力できないのですね、
ヘルプみてものっておりませんでしたので勉強になりました。

Splitでします。ありがとうございました。
(おおたわ) 2016/02/08(月) 09:31


 私なら、該当シートごとコピーして列ごと出力するなぁ。
    Option Explicit

    Sub test()
        Sheets("Sheet1").Copy after:=Sheets(Sheets.Count)
        With Sheets(Sheets.Count)
            .Range("A1").EntireColumn.TextToColumns .Range("B1"), other:=True, otherchar:=":"
        End With
    End Sub

 必要に応じてデータだけまるっと必要なシートに張りつけたり
(稲葉) 2016/02/08(月) 09:44

稲葉様 ご連絡ありがとうございます。
そうですね、その方法も考えました。
分割するのが3個と少ない為、split で変数に代入するのがスマートでしたので split にしました。
アドバイスありがとうございました。
(おおたわ) 2016/02/08(月) 09:57

コメント返信:

[ 一覧(最新更新順) ]


YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki. Modified by kazu.