• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:エクセルVBAのChr(10)の挿入と削除)

エクセルVBAのChr(10)の挿入と削除

このQ&Aのポイント
  • エクセルVBAでのChr(10)の挿入と削除について教えてください。結合されたセル内に他のプログラムから送られてくる値を挿入する必要がありますが、値の文字数や行数は都度変わります。ボタンを押すたびにChr(10)の改行を挿入したり削除したりしたいのですが、どのようにすればよいでしょうか?
  • エクセルVBAでのChr(10)の挿入と削除方法を教えてください。結合されたセル内に他のプログラムから送られてくる値を挿入する必要があり、値の文字数や行数は変わります。ボタンを押すたびにChr(10)の改行を挿入したり削除したりする機能を作りたいです。
  • エクセルVBAでのChr(10)の挿入と削除について質問です。結合されたセル内に他のプログラムから送られてくる値を挿入する必要がありますが、値の文字数や行数は都度変わります。Chr(10)の改行を挿入したり削除したりするためのコマンドボタンを作りたいのですが、どのようなVBAコードを書けば良いでしょうか?

質問者が選んだベストアンサー

  • ベストアンサー
  • keithin
  • ベストアンサー率66% (5278/7941)
回答No.1

Sub CommandButton1_click()  activecell.value = activecell.value & vbLf End Sub Sub CommandButton2_click()  dim buf as string  buf = activecell.value  If right(buf, 1) = vbLf then  activecell.value = left(buf, len(buf) - 1)  end if End Sub 単純に足したり削ったりするだけのようですが。

half_half
質問者

お礼

ありがとうございます やりたいことはこれでした!

その他の回答 (2)

  • imogasi
  • ベストアンサー率27% (4737/17070)
回答No.3

質問者の言っていることおよび必要性(コマンドボタンを2つも設けるのかなど)が良くわからない。 ーー したいことは、いつもそのセルは10行分(空白行も含めて)とかの一定行数分にしたいのではないのか。 もしそうなら、変数に原データがセットされた段階で、その変数の値のChr(10)の数を数え、10-(その数)だけ「文字列の後尾にChar(10)を加えれば仕舞いではないのか。 >Chr(10)の数を数えーー一案としてChr(10)を空白で置き換え、文字列の長さのバイト数減少がChr(10)の存在した数で割り出す。 参考 Replace関数 http://officetanaka.net/excel/vba/function/replace.htm 別にVBAにはReplaceメソッドもある。 == 誤解しておればこの回答は無視してください。

回答No.2

とりあえず行単位の削除、追加を・・・ LineAddとLineDel関数を書いてみましたのでボタンから呼び出してください ※データが入っている行も削除できますのでNGな場合は  IF文などでチェックしてください Sub LineAdd() Dim str() As String str = Split(Range("A1").Text, Chr(10)) ReDim Preserve str(UBound(str) + 1) Range("A1").Value = Join(str, Chr(10)) End Sub Sub LineDel() Dim str() As String str = Split(Range("A1").Text, Chr(10)) If UBound(str) = 0 Then '1行しかない場合、セルをクリア Range("A1").Value = "" Else ReDim Preserve str(UBound(str) - 1) Range("A1").Value = Join(str, Chr(10)) End If End Sub

half_half
質問者

お礼

補足とお礼を間違えました

half_half
質問者

補足

ありがとうございます。 こちらの方法でもやって見ます!

関連するQ&A