重要なお知らせ

「教えて! goo」は2025年9月17日(水)をもちまして、サービスを終了いたします。詳細はこちら>

電子書籍の厳選無料作品が豊富!

こんばんは。 次のような表があると仮定します。

  A   B    C     D   
1 今日の
2     12時
3          渋谷で待つ 
4
5

D5に  今日の
    12時
    渋谷で待つ

という具合に、自動的に入力もしくは、表示するにはどうすればいいでしょうか?

「&」の記号でつなげると横に長い文章になってしまします。

また、これの逆の作業をしたい場合はどうすればいいでしょうか?

例 東京
  特許    →  東京・特許・許可局
  許可局 
 
1つのセルに折り返して入力されているものを、それぞれ改行を境に別のセルに1つずつ分けて入力。。

教えてくださいまし。 ほんと、すみません。

A 回答 (3件)

みなさんこんばんは!



>1つのセルに折り返して入力されているものを、
>それぞれ改行を境に別のセルに1つずつ分けて入力。。
私もこちらの方を1案

 データ 区切り位置 次へ [区切り文字]その他をチェック
 記入欄をクリックしてカーソル表示させた後 [Ctrl]+J 完了
    • good
    • 0
この回答へのお礼

わお。 いま、実際に試したところなんですが、思わず「おお!!」と声をあげてしまいました。 

「Ctrl」+J なる技があるとは。。 ヘルプを今みてるところなんですが、見つけられません。

 でもすごいですね、この技。 ありがとうございました。

お礼日時:2001/08/15 13:12

>また、これの逆の作業をしたい場合はどうすればいいでしょうか?



こちらもExcelの機能でできそうですね。

セル内で改行されているデータをコピーして、展開したいセルに貼り付けます。
貼り付けたセルを選んで、メニューの、データ→区切り位置で元のデータの形式は、
 スペースによって右または左に・・・・固定長・・のデータ を選んで、次へ
 データのプレビューで、『・』の両側をクリックしてデータを分割します。縦線が入ります。終わったら次へ
 縦線ではさまれた『・』の箇所を選んで『削除する』にします。全部行ったら完了! できあがり?
(Excel2000で確認済みです)
関数でもできますが長くなりますね。
    • good
    • 0
この回答へのお礼

 nisi6さん。先日も回答いただきありがとうございます。
 なるほど、もともとある機能をつかえば、可能でしたね。
 状況に応じて臨機応変にできればいいのですが、難しい操作に出会うと「うーーむ、これはVBAじゃないと無理だろう・・・」と勝手に判断して、関連URLを徘徊しておりました。 勉強になりました。
 

お礼日時:2001/08/15 13:02

1.今日の12時渋谷で待つ



  セルD5に次の式を設定します。
  =A1&char(10)&B2&char(10)&C3

セルD5の書式設定を「折り返して全体を表示する」にしてくださいね。

2.東京・特許・許可局

  上記のようにchar(10)で改行を作成している場合、
  VBAのSPLITを使用して分解します。


dim sArrey() as string

sArrey() = split( Sheet(1).Range("D5"), chr(10) )

ここではChar(10)では無く、chr(10)であることに注意してください。

  あとはsArrey(0),(1),(2)に値があるので目的のセルに代入。

  なお、個数の取得は ubound でOKです。
    • good
    • 0
この回答へのお礼

Sub わける()
Dim sArrey() As String
sArrey() = Split(Sheets(1).Range("D5"), Chr(10))

Range("g1") = sArrey(0)
Range("g2") = sArrey(1)
Range("g3") = sArrey(2)
End Sub

と記入したら G列の上から

東京
特許
許可局 

と入力できました。 ありがとうございました。
最近、VBAなるものに興味をもちはじめたところです。

セルへの入力、内容参照等の部分でつまづいている最中です。  もっと勉強したいと思います。 uboundはただいま調査中。

お礼日時:2001/08/15 12:58

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!