
先日QNo.1801087で質問させていただいた件の続きです。
http://okwave.jp/kotaeru.php3?q=1801087
ユーザーフォームのテキストボックスに入力されたデータを複数のセルに入るように教えて頂きました。それは上手く行ったのですが、改行マークが(・)入ってしまって、その後の処理に問題が生じてしまうので、改行を削除するコードを記述しましたが、はじめの「0」が消えてしまって困ってます。
A1 942158621c9c05011020010a03020907・
A2 00054000・
Columns("A:A").Select
Selection.Replace what:="" & Chr(13) & "", replacement:=""
データは数字とアルファベットがランダムに並んでおり、全て文字列です。
A2のように数字のみの場合もあり、「0」から始まる時もあり、この「0」が一緒に削除されて「54000」となってしまいます。
上手く改行だけを削除し、「00054000」と文字列にするにはどうしたら良いのでしょうか。
Win2000、Office2003です。
よろしくお願いいたします。
No.2ベストアンサー
- 回答日時:
こんばんは。
Wendy02です。>http://okwave.jp/kotaeru.php3?q=1801087
>それは上手く行ったのですが、改行マークが(・)入ってしまって
うまくいっていないと思います。
# そのどちらかで区切ったら、片方が残ってしまいます
と前回書きましたが・・・。 TextBox の改行コードは、CrLf つまり、Chr(10) と Chr(13)と二つあります。その片方で区切れば、片方が残ると、と書いたわけです。私の書いたものは、分っていらっしゃらなかったようです。
Private Sub CommandButton1_Click()
Dim buf() As String
If TextBox1.Text <> "" Then
buf = Split(TextBox1.Text, vbCrLf)
With Range("A1").Resize(UBound(buf) - LBound(buf) + 1)
.NumberFormatLocal = "@"
.Value = WorksheetFunction.Transpose(buf)
End With
End If
End Sub
すみません、前回Wendy02さんのコードが難しく他の方に教えていただいた方法でやっておりました。
今回こちらで試したところできました。今後勉強いたします。ありがとうございました。
No.3
- 回答日時:
こんにちは。
KenKen_SP です。回答としては、#1 の方のもので良いと思いますが、前回のご質問に
絡んでコメントすると、、
1. テキストボックスで手入力した改行コードは vbCrLf = Chr(13)
-->セル内改行のあるセルの値を代入した場合は vbLf
2. セル内改行の改行コードは vbLf = Chr(10)
です。改行コードで Split を使って配列にバラすときには、この
改行コードの違いに気をつけて下さい。
例えば、改行を含むテキストの変数が TEST で改行コードが vbLf
なら
aryTEST = Split(TEST, Chr(10)) ' Chr(10) = vbLf
で配列 aryTEST にバラすと、改行コードはこの時点で消えている
ハズです。
改行コードが残っているのであれば、Split に渡す改行コードが
違っていたか、他に原因がありそうです。
例えば、 vbLf と vbCrLf の混在とか。
つまり、前回のご質問では、 vbCrLf の混在する可能性を考慮し、
改行コードをそろえてから Split した方が良いかもしれません。
a = TextBox1.Text
a = Replace(a, Chr(13), Chr(10)) '<--- 追加
s = Split(a, Chr(10))
みたいな感じ。
はずしてたら、スルーして下さい。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Chr(13)とChr(10)の違いは?
-
棒グラフ 横軸の縦書き2列にし...
-
【エクセル】セル最後にある無...
-
WordにURLを載せると
-
Excelセル内の改行を含む文字列...
-
PDFの改行URLを有効にす...
-
パワーポイントのテキストボックス
-
イミディエイトウインドウの最...
-
履歴書の志望動機の所で、「ま...
-
エクセルでセル内改行の複数行...
-
エントリーシートについて
-
Accessにインポートしようとす...
-
ベタ打ちってなんですか?
-
Excel VBAで改行を含めたセルの...
-
wordで均等割り付けをするとき...
-
VBA フォームのテキストボック...
-
Access2003で特定列の改行コー...
-
Texに関する質問(文章中の数式...
-
さくらエディタと秀丸との正規...
-
小論文の文字数について
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Chr(13)とChr(10)の違いは?
-
wordで均等割り付けをするとき...
-
SJISで、全角文字Aの文字コード...
-
パワーポイントのテキストボックス
-
VBA フォームのテキストボック...
-
エクセル
-
エクセルでセル内改行の複数行...
-
PDFの改行URLを有効にす...
-
Word 途中で勝手に改行してしま...
-
【エクセル】セル最後にある無...
-
棒グラフ 横軸の縦書き2列にし...
-
Tera Term のマクロでの改行コ...
-
Excel VBAで改行を含めたセルの...
-
バッチで指定ファイルの文末に...
-
履歴書の志望動機の所で、「ま...
-
Excel セル内の最初と最後の改...
-
メールに添付する写真を並列さ...
-
excelで勝手に改行されます
-
短歌が1行で収まらない場合、...
-
Wordで原稿用紙設定の時に、ペ...
おすすめ情報