アプリ版:「スタンプのみでお礼する」機能のリリースについて

マクロの素人です。
Win XPでエクセルでセルの中味を区切る設定をしたところ、うまくいきません。

例えば、A列の 経営管理:情報部 をコロンで区切るというマクロを組みます。マクロを実行すると
|経営管理|情報部| という結果になります。

しかし、他の値でマクロを実行しても、4文字目で強制的に区切られてしまいます。
セルに何文字入っていようが、「:」でセルを分けたいのですが、マクロの組み方での解決方法を教えてください。

A 回答 (3件)

手元のExcel2003では特に問題ありません。



記録したままだと、こうなってました。

Selection.TextToColumns Destination:=Range("A1"), DataType:=xlDelimited, _
TextQualifier:=xlDoubleQuote, ConsecutiveDelimiter:=False, Tab:=True, _
Semicolon:=False, Comma:=False, Space:=False, Other:=True, OtherChar _
:=":", FieldInfo:=Array(Array(1, 1), Array(2, 1)), TrailingMinusNumbers:=True

--
> 他の値でマクロを実行しても、4文字目で強制的に区切られてしまいます。

Excelのバージョンが違うとか、やり方がマズイのでは?としか…。

この回答への補足

私のマクロでは、以下のようになっています。どこの設定がおかしいのでしょうか?
Selection.TextToColumns Destination:=Range("E8"), DataType:=xlFixedWidth, _
FieldInfo:=Array(Array(0, 1), Array(55, 1), Array(104, 1), Array(159, 1), Array(190, 1 _
), Array(245, 1), Array(296, 1), Array(367, 1), Array(444, 1), Array(505, 1), Array(554, 1) _
, Array(593, 1), Array(640, 1)), TrailingMinusNumbers:=True

補足日時:2005/07/04 17:37
    • good
    • 1
この回答へのお礼

ご回答いただいた式をそのままコピペして使いました。
ありがとうございました。

お礼日時:2005/07/04 19:22

> どこの設定がおかしいのでしょうか?



マクロを記録する時の手順は正しいですか?

範囲選択
[データ]-[区切り位置]
「区切り位置指定ウィザード-1/3」ウィンドウ
「カンマやタブ場どの区切り文字によってフィールドごとに区切られたデータ」を選択し、次へ。
「区切り位置指定ウィザード-2/3」ウィンドウ
区切り文字の「その他」をon、文字に「:」を指定し、完了。

で記録されました。


> FieldInfo:=Array(Array(0, 1), Array(55, 1), Array…

の結果を見ると、複数の区切り位置を固定で設定しているように見えます。
    • good
    • 1
この回答へのお礼

ありがとうございます。
やはり手順が間違っておりました。
お恥ずかしいばかりです・・・。

お礼日時:2005/07/04 19:23

こんにちは。

単に、文字列の場合、以下のようでいいはずです。ただし、上書きモードです。

最初に、マウスで選択します。

Sub Test1()
  Selection.Columns(1).TextToColumns _
  Destination:=Selection.Cells(1, 1), _
  Other:=True, _
  OtherChar:=":"
End Sub

サンプル

経営管理:情報部
総務:人事
第一営業:開発
仕入:購入

でやってみましたが、問題はありませんでした。
    • good
    • 0

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