[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]
『セルの最後に改行を追加。』(塗)
VBAでセルの中にある最後のデータの最後に改行を追加するにはどうしたらよいでしょうか。(データのあるセルの一番下を一行空ける)
別シートからデータを転記しているSheet1があります。
そのSheet1の「指定した範囲内のデータの下に改行を追加したい」です。
頻繁にデータの更新があり、Sheet1のデータも変わるため、手動でなくVBAで行うにはどのようにしたらよいでしょうか。
< 使用 Excel:Excel2016、使用 OS:Windows10 >
>セルの中にある最後のデータの最後に改行を追加する は >(データのあるセルの一番下を一行空ける) のことを言っているのですか?
意味が違うような感じを受けますが? (seiya) 2018/03/09(金) 11:35
イメージしているものは、現在、一つのセルに
__
ああ
いい
うう
 ̄ ̄
と入力されていた場合、
__
ああ
いい
うう
 ̄ ̄
のような感じにするイメージです。
(塗) 2018/03/09(金) 11:48
Option Explicit
'**********************************************************
Sub main()
Dim sh01 As Worksheet
Set sh01 = ThisWorkbook.Worksheets("Sheet1")
sh01.Range("A1") = sh01.Range("A1") & vbLf
Set sh01 = Nothing
End Sub
でしょうか。 (隠居じーさん) 2018/03/09(金) 12:00
転記するセルは複数ですか? どのような形で転記されていますか? (seiya) 2018/03/09(金) 12:02
たとえばA1セル内の文字列の最後に改行入れたいだけなら、こんな感じでよいのではないかと・・
Sub つぶやき()
With Range("A1")
.Value = .Value & vbLf
End With
End Sub
(もこな2) 2018/03/09(金) 12:05
Sub プランA()
Dim MyRNG As Range
For Each MyRNG In ActiveSheet.UsedRange
'↓Valueプロパティを省略してあります
If MyRNG <> "" Then MyRNG = MyRNG & vbLf
Next MyRNG
End Sub
Sub プランB()
Dim MyRNG As Range
For Each MyRNG In ActiveSheet.Cells.SpecialCells(xlCellTypeConstants, 3)
MyRNG = MyRNG & vbLf
Next MyRNG
End Sub
(もこな2) 2018/03/09(金) 13:48
>Sheet2の複数行のデータを一つのセルにまとめて転記している為
Sheet2の単一列内で連続した範囲が選択された状態で、実行するとSheet1のA1に結果を表示。 日付、もしくは特殊なセル書式が設定されている場合はtest2 (此方は連続していなくてもOK)
Sub test()
With Selection
Sheets("sheet1").Range("a1").Value = _
Join(Filter(.Parent.Evaluate("transpose(if(" & .Address & _
"<>""""," & .Address & "))"), False, 0), vbLf) & vbLf
End With
End Sub
Sub test2()
Dim r As Range, txt As String
For Each r In Selection
If r.Text <> "" Then txt = txt & r.Text & vbLf
Next
Sheets("sheet1").Range("a1").Value = txt
End Sub
(seiya) 2018/03/09(金) 20:12
[ 一覧(最新更新順) ]
YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki.
Modified by kazu.