• ベストアンサー

EXCEL 行をまたぐ表示

下のように、B1が空白の場合、A1に入力した文字がB1にまたがって表示されますが、例えばB2にif(A10="","",suika)なんて式が入っていたとしたら、B2は空白なのですがA2に入力した文字が途中までで表示されません。    A   B 1 すいかのたね 2 すいかの     ←B2のセルに式が入っている これを1の列のようにBが空白の場合、Bの行にまたがって表示させる方法はないでしょうか?

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

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

他の方の解答と違うので見当はずれが心配ですが、 A列に文字が、A列幅に表現できる以上の文字数入っているとする。 B列に所々ワンスペース入っているとする。 個別にB列のスペースのセルを1つ1つをクリアー(編集-クリアー)の操作ができる数で有れば、そのようにすれば良いと思う。 --- B列の空白セル数が多いときはVBAでModule1に Sub test1() For i = 1 To 10 '10は適当に増やすこと If Cells(i, 2) = " " Then ' " "は1スペース挟む ’ またはIf mid( Cells(i,2),1,1)=" " Then Cells(i, 2).Clear End If Next i End Sub と入力して、実行するとA列に入れた文字列が現れる。 ------- =IF(B1=" ","",B1) を利用しようとしたが、第2項でクリアー状態は””では表せない ようで、失敗した。誰かご存知であれば、それで解決するだろう。

suika_no1
質問者

お礼

ありがとうございます。 これに少し手を加えてうまく行きました。 質問の仕方が悪かったのですが、    A    B 1 すいか  2      たね 3      あまい 4      みどり と単純に入力した表を、セル幅を狭くしてインデント代わりにして別表に   AB 1 すいか  2  たね 3  あまい 4  みどり と表示させたかったのです。 A列は=if(A1="","",A1) B列は=B1 にして元の表のB列が空白の場合0が返ってくるようにして Sub test1() For i = 1 To 10 If Cells(i, 2) = 0 Then  Cells(i, 2).Clear End If Next i End Sub としました。(単純だけど(^^;) 頻繁に使う事があるので大変助かりました。本当にありがとうございます。

その他の回答 (4)

  • nishi6
  • ベストアンサー率67% (869/1280)
回答No.5

しつこく、無理やり考えた別法です。セル幅を調整しない方法です。 (1)B列の算式を別シートに作ります。(別シートは枠線の表示をしません) (2)そのセルをコピーして、表示する元のシートのB列に、     Shift+編集→図のリンク貼り付けで貼り付けます。 (3)(1)の別シートの算式を書き込んだセルに条件付き書式を設定します。     そのセルがB2とすると、条件付き書式の設定ダイアログで      < 数式が > < =LEN(B2)>0 > にして、書式ボタンを押して      パターンタブで白を選択します。       (表示する元のシートのバックは白としています) 条件付き書式を使って、   長さのある有効な文字なら、セルを白く塗って図のリンク貼り付け。   長さのない文字なら、セルの背景が透明なまま図のリンク貼り付けしています。 算式を別シートに持っていければの方法です。

  • nishi6
  • ベストアンサー率67% (869/1280)
回答No.3

普通は、セル幅を広げるか、フォントを小さくするか、折り返して複数行で表示するのでしょうか。 セル幅以上の文字長を入力していたら、このままでは回避しようがないと思います。 が、B列を非表示にしたらどうですか?一応できますが主旨が違うかもしれませんね。 または『すいかのたね』を別の場所(枠線を非表示にした別シートで)入力して、コピー後、 このシートに、Shift+編集で図のリンク貼り付けを行えばB2に関わらず行をまたがって表示できます。 何かほんとの解決策じゃないようですね。ご参考に。

回答No.2

A2の文字のフォントサイズを小さくする。 行の高さを広げて折り返して表示する。 Aの幅を広げるのが一番かな?

  • yama3desu
  • ベストアンサー率16% (2/12)
回答No.1

普通は、列Aの幅を広げるんですが、 駄目ですか? ドラッグして、広げるときに、 マウスをダブルクリックすれば、最適な幅になります。 A列の幅を広げずに、というのは、 無理じゃないかと思いますが、違っていたら、 御免なさい。

関連するQ&A

  • エクセル 文字が表示されたセルを抽出したい

    エクセルの関数を教えて下さい。    A     B     C     D   1 りんご              りんご 2       プリン        プリン 3             紅茶   紅茶 4 バナナ              バナナ 5      6             緑茶   緑茶 上記のような表があります。(A~は列、1~は行番号です) A1~C6までは、IF関数で、条件にあった場合に“りんご”などを表示、そうでない場合には空白と なるような式が入っています。 そして、D列のように、それぞれの行に表示されている文字を抽出、何も表示されていない場合は空白としたいのです。 D列にはどういった式を入れればよいかを教えて下さい。 ※各行に表示されるのは1つのセルのみで、例えばA1のセルとC1のセルに文字が表示される ことはありません。A1に文字が表示されている場合は、必ずB1・C1のセルは空白です。 宜しくお願い致します。

  • エクセル2007の大小比較質問。

    エクセル2007の大小比較質問。 数式でB1というセルの答えが85以上ならAのセルを赤く表示するという式についてです。 条件付き書式のやり方は分かるので省略します。 A1のセルに =B1>85 と入力します。 B1のセルには文字列が入力されています。 =B1>85 この式の場合は TRUE =B1<85 この式の場合は FALSE B1に数式が入力されていて、その答えが空白表示だった場合も TRUE になります。 空白表示=0 (どうして85より大きいのか?) 文字列=計算不能 にはならないのでしょうか? このロジックについてご説明をお願い致します。 また空白表示と文字列の場合は除くという関数(<>””ではなくIFなど)がありましたらお教えください。 よろしくお願い致します。

  • エクセル・マクロで最終行を表示することについて

    エクセル・マクロで最終行を表示することについて C列の最終行を表示する場合、以下のマクロで表示できます。 今回はC列に C1=A1&B1 C2=A2&B2  ↓ という式が入力されている場合について質問します。 A列とB列が空白の場合、C列には0が表示されます。 したがって、下記のマクロだとこの0の行が最終行となります。 私の希望はこのC列の0は空白とみなし、0以外の値や文字が入力されている最終行を表示することです。 どのような工夫をすれば可能でしょうか? ご指導よろしくお願いします。 Sub 最終行表示() maxrow = Range("c65536").End(xlUp).Row MsgBox maxrow End Sub

  • EXCELの関数を教えてください。

    シート1 A列には1と2 B列には名前 C列には備考1(入力のあるセルもあればないセルもあり)が入力されたシートがあるとします。行は無限です。 シート2への表示を A列に1が入力されていた時のみC列の備考欄に入力されている文字をかえし、空白の場合は空白にしたいのです。 A列に2が入力されている場合は全部が空白です。 IFとISBANKの組み合わせみたいな感じなんですがよく分かりません。宜しくお願いします。

  • Excelの関数で困っています

    お願いします。 求めたい式は A列が空白でB列も空白だったら"空白" A列又はB列のどちらかでも文字が入っていたら"入ってる" A列とB列の両方文字が入っている場合は"両方" と表示させたいと思っております。 IF関数を試みましたが、上手くいきません。 できれば全てを1行で表示できるようにしたいのですが、 無理ならば、2行又は3行になっても構いません。 関数の得意な皆様、どうぞよろしくお願い致します。

  • 必要な行だけ表示または印刷できる?

    エクセルで たとえば A列に得意先 B列に日計売上 C列以降は集計等入力した表があって 別シートにその日の売上があった得意先名と日計売上だけが表示されるように A列 =IF(Sheet●!B○=0,"",Sheet●!A○) B列 =IF(Sheet●!B○=0,"",Sheet●!B○) で日計売上のない得意先は表示されない表を作ったのですが、表示の無い行が含まれない表示はできますか? 式が入力されているので空白行の削除ではないんですね 可視行でもうまくいかなかったのですが 良い方法は、ありますか?

  • IF関数について

    IF関数について A列のセルに住所が入力されていて、「中野区」という文字列が含まれているときに「○」そうでない場合は「-」をB列セルに表示させる方法で B列セルに、 =IF(COUNTIF(A1,"*中野区*"),"○","-") を入力すれば良いことがわかりました。 この条件に加えて、A列のセルが空白の場合上の行を参照するという条件を加えたいと思います。 例A3のセルが空白の場合A2を参照しB3に表示させる。 因みに、A2も空白の場合A1を参照する。 って感じにしたいです。 宜しく御願いします。

  • エクセル:データが入った最終行の行番号の取得

    お世話になります。 A列にいろいろデータが入っているとして、データが入っている一番下(最終行)の行番号をB1のセルに表示させるにはどういう計算式で出来るでしょうか? A列のデータは数値だけでなく文字列も含みます。また途中空白セルもあります。 A1~A20にデータが入っているときはB1に20と表示させる。 よろしくお願いします。

  • IF関数で0より大きい数値が入力されたら「あ」と表示、文字列の場合は空白としたい

    エクセル2003です B1に =IF(A1>0,"あ","")とすると「0」のときは、空白となりますが文字列が入力されたときにも「あ」と表示されてしまいます。 A1セルに「0」より大きい数値が入力されたときだけ、B1セルに「あ」と表示したいのです。 よろしく御願いします。

  • エクセルのはみだし表示について

    エクセルでA列、B列にデータを入力してあります。このとき、A列の文字をB列にはみだして表示、印刷することは可能でしょうか? もっとくわしく言うと、行幅を広くしてA列は上揃え、B列は下揃えにするなどして2つが重ならないようにしたいのです。 もしそれができなければ、1行おきにデータが入力されるように行を挿入する方法を教えて下さい。1行おきに行を選択して挿入を行うと データ データ 空白(挿入された行) データ データ 空白 というようになってしまいます。範囲を指定して間に1行ずつ挿入なんてできないんですか? 1行おきに選択するのも大変なデータ量があるのでなんとか簡単に作業をしたいのですが・・・

専門家に質問してみよう