セル内のすべてのキャリッジリターンを取り除きたい。どうすればいいですか?
=CLEAN(A1)
クリーンは、テキストからすべての印刷不能文字を削除します。 -Excelヘルプドキュメント
セルがA1にあると仮定すると、次の式を使用できます。
_=SUBSTITUTE(A1,CHAR(10),"")
_
キャリッジリターンによっては、char(13)
の代わりにchar(10)
を使用する必要があります。
1つまたは複数のセルを選択し、Excelのメニューバーから[データ/テキストから列へ]をクリックし、最初のダイアログページで[区切り]オプションを選択し、[次へ]ボタンをクリックし、そのボックスには何も表示されませんが、列レイアウトチャートは、改行で分割されていることを示します(キャリッジリターンではありません)... [完了]ボタンをクリックするだけです。
= Clean(A1)
このコマンドは、Excelの「数式」タブ>テキストの下にあります。
Sub RemoveLineBreaks()
Application.ScreenUpdating = False
Dim rngCel As Range
Dim strOldVal As String
Dim strNewVal As String
For Each rngCel In Selection
If rngCel.HasFormula = False Then
strOldVal = rngCel.Value
strNewVal = strOldVal
Debug.Print rngCel.Address
Do
strNewVal = Replace(strNewVal, vbLf, " ")
If strNewVal = strOldVal Then Exit Do
strOldVal = strNewVal
Loop
If rngCel.Value <> strNewVal Then
rngCel = strNewVal
End If
End If
rngCel.Value = Application.Trim(rngCel.Value)
Next rngCel
Application.ScreenUpdating = True
End Sub