
[ALT]-[ENTER]を使い、セル内を改行した文章があります。
その文章の末尾にある改行のみ削除したいのですが
ReplaceやRtrimを使うと、末尾以外の改行も削除されたりして、
思うような結果が得られません。
イメージとしては以下のようにしたいと思っております。
↓このように表示されているものを
-----------------------
本日は晴天なり。
1.AAAAA
2.BBBBB
-----------------------
↓このようにしたい
(2.BBBBB 以降にある改行のみ削除したいです。)
-----------------------
本日は晴天なり。
1.AAAAA
2.BBBBB
-----------------------
判りづらい説明で申し訳ありません。
何か良い方法はないでしょうか?
No.1ベストアンサー
- 回答日時:
正規表現で置換すればできると思います。
A1の文字列の末尾にある改行を削除してA2に表示します。
参照設定でVBScript Regular Expressions ?.?にチェックを入れる
Sub test()
Dim re As New RegExp
re.Pattern = "\n+$"'末尾の1個以上の改行
Range("A2") = re.Replace(Range("A1"), "")
Set re = Nothing
End Sub
または、
Sub test()
Dim re As Object
Set re = CreateObject("VBScript.RegExp")
re.Pattern = "\n+$"'末尾の1個以上の改行
Range("A2") = re.Replace(Range("A1"), "")
Set re = Nothing
End Sub
早々の回答ありがとうございました。
大変に助かりました。
「正規表現」の意味がよくわかっていないので、
もっともっと、しっかりと勉強したいと思います。
本当に有難うございました。
No.4
- 回答日時:
こんにちは。
このようにして、最後の後ろの改行コードを探してあげればよいと思います。
Sub Test1()
Dim c As Variant
Dim i As Integer
For Each c In Range("A1", Range("A65536").End(xlUp))
If VarType(c.Value) = vbString Then
i = InStrRev(c.Value, Chr(10))
If i >= Len(c.Value) Then
c.Value = Mid$(c.Value, 1, i - 1)
End If
End If
Next c
End Sub
ただし、空白値が入っていると、削除しませんので、条件式の部分を、
If i >= Len(c.Value) Or Trim(Mid$(c.Value, i + 1)) = ""
としてあげなくてはなりません。
また、#3さんのご指摘も考えられますね。フォントサイズが、13以上の場合だと思いますが、その標準スペースの間隔がずれてしまうので、バランスを取るために、そのようなスタイルにしていることがあります。
回答有難うございます。
色々な本を読んだり、ネットで検索して色々とやってみたのですが
思うように動かず、悪戦苦闘しておりました。
助かりました。有難うございます。

No.3
- 回答日時:
回答ではありませんが。
それは削除してしまって大丈夫な改行でしょうか?
Excelでは、印刷時に文字が切れてしまう現象を回避するために、
セルの文章の末尾にわざと余分な改行を加えてることが多いので。
上記のことをご存知であれば問題ないですが、
もしそうでなければファイルの作成者などに確認してみてください。
回答ありがとうございました。
今回は削除しても大丈夫な改行でした。
末尾に改行が無いと、印刷時に文字が切れてしまうんですね。
知りませんでした。
勉強になりました。有難うございます。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- その他(データベース) カラム上の重複を削除するクエリを教えてください 3 2022/04/12 14:11
- その他(ソフトウェア) 一太郎の文章編集 改行の削除 3 2023/03/31 16:27
- Visual Basic(VBA) 指定した文字から指定した文字のスペースまでを削除するVBAの構文について 6 2022/07/24 22:20
- Excel(エクセル) Excelの関数で実現可能か知りたいです 5 2023/08/06 08:58
- 政治 自民党の改憲案は憲法が【国家権力が暴走するのを防ぐもの】から【国民を縛り弾圧するためのもの】に改悪さ 2 2022/07/15 12:14
- Excel(エクセル) Excelの複数置換はSUBSTITUTEを重ねるしかない? 9 2022/05/08 11:25
- その他(プログラミング・Web制作) プログラミング pythonの問題について 2 2022/04/19 00:41
- X(旧Twitter) Twitterでtweet・いいねができなくなりました。 2 2023/07/02 20:06
- Excel(エクセル) エクセルの数式で教えてください。 3 2023/04/17 09:25
- Excel(エクセル) エクセル2013「次のページ数に合わせて印刷」が小さすぎる 9 2023/03/28 10:18
このQ&Aを見た人はこんなQ&Aも見ています
-
【エクセル】セル最後にある無駄改行を検索・削除したい
Excel(エクセル)
-
Excel セル内の最初と最後の改行を削除
Excel(エクセル)
-
【VBA】エクセルで最後の不要な改行コードを削除するコードについて
Visual Basic(VBA)
-
-
4
最終行の改行について
Visual Basic(VBA)
-
5
vbsで最後の行を削除する
その他(プログラミング・Web制作)
-
6
エクセルデータの末尾の改行を削除したい
Excel(エクセル)
-
7
VBA:Openステートメントで開いたCSVファイルの特定行を削除する方法
その他(プログラミング・Web制作)
-
8
文字列からタブコードを取り除きたい
Visual Basic(VBA)
-
9
テキストファイルから改行コードを削除して読込む方法
Visual Basic(VBA)
-
10
VBAでブックを非表示で開いて処理して閉じる方法
Excel(エクセル)
-
11
VBAで文字列を数値に変換したい
Excel(エクセル)
-
12
EXCEL VBA セルに既に入力されている文字に文字を追加する
Excel(エクセル)
-
13
VBAでエクセルシートを更新(リフレッシュ)する方法を教えて下さい。
Excel(エクセル)
-
14
VBA(エクセル)で自動的にボタンをクリックさせるには
その他(プログラミング・Web制作)
-
15
別ブックをダイアログボックスで指定してそこにあるシートをコピーしたい
Excel(エクセル)
-
16
Excel vbaで特定の文字以外が入っている時、メッセージを表示させるプログラムについて
Visual Basic(VBA)
-
17
エクセルのエラーメッセージ「400」って?
Visual Basic(VBA)
-
18
WorkBooksをオープンさせずにシートにコピーしたい【EXCEL VBA】
Excel(エクセル)
-
19
エクセルVBA テキストボックスに3桁ごとにコンマ
Visual Basic(VBA)
-
20
セル内の文字列が日本語か英語かを厳密に識別したい
Visual Basic(VBA)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Tera Term のマクロでの改行コ...
-
PDFの改行URLを有効にす...
-
Chr(13)とChr(10)の違いは?
-
エクセルでセル内改行の複数行...
-
wordで均等割り付けをするとき...
-
Access2003で特定列の改行コー...
-
棒グラフ 横軸の縦書き2列にし...
-
履歴書の志望動機の所で、「ま...
-
メールに添付する写真を並列さ...
-
Excel、VBA、1行中複数セルに...
-
イミディエイトウインドウの最...
-
Word 途中で勝手に改行してしま...
-
Excel セル内の最初と最後の改...
-
バッチで指定ファイルの文末に...
-
【エクセル】セル最後にある無...
-
excelで勝手に改行されます
-
VBA フォームのテキストボック...
-
AutoCADのダイナミック文字記入...
-
短歌が1行で収まらない場合、...
-
改行コードを自動変換してくれ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Chr(13)とChr(10)の違いは?
-
wordで均等割り付けをするとき...
-
Word 途中で勝手に改行してしま...
-
【エクセル】セル最後にある無...
-
棒グラフ 横軸の縦書き2列にし...
-
VBA フォームのテキストボック...
-
パワーポイントのテキストボックス
-
PDFの改行URLを有効にす...
-
履歴書の志望動機の所で、「ま...
-
excelで勝手に改行されます
-
バッチで指定ファイルの文末に...
-
Tera Term のマクロでの改行コ...
-
エクセルでセル内改行の複数行...
-
Excel セル内の最初と最後の改...
-
Accessにインポートしようとす...
-
イミディエイトウインドウの最...
-
EXCEL(VBA) 末尾の改行のみ削...
-
短歌が1行で収まらない場合、...
-
Excel VBAで改行を含めたセルの...
-
PCに表示された内容(文字)をコ...
おすすめ情報