Excelで、A1のセルに「abcdef・・・・」と長い文字列を入れ、B1のセルに「=””」とした場合、A1のセルの文字がB1のセルを境にして見えなくなってしまいます(B1に何もないときはB1に覆いかぶさって見える)。B1のセルにはIF関数の結果が入ります。値は””です。A1の文字列を尻切れにしたくありません。どうしたらよいでしょうか。

回答の条件
  • URL必須
  • 1人2回まで
  • 登録:2003/11/06 00:17:45
  • 終了:--

回答(14件)

id:ayayaya No.1

ayayaya回答回数607ベストアンサー獲得回数02003/11/06 00:22:14

ポイント2pt

http://www.hatena.ne.jp/1068045465#

Excelで、A1のセルに「abcdef・・・・」と長い文字列を入れ、B1のセルに「=””」とした場合、A1のセルの文字がB1のセルを境にして見えなくなってしまいます(B1に何もな.. - 人力検索はてな

A列の幅を広げる(笑)

id:smileless

そういうの無しにしてください

2003/11/06 10:32:22
id:sommeil No.2

sommeil回答回数356ベストアンサー獲得回数02003/11/06 00:32:23

ポイント2pt

A1セルのプロパティ設定で文字を折り返したらどうですか?

id:smileless

折り返したら列の縦幅が大きくなっってしまいます。

A1セルの大きさは変えたくありません。

2003/11/06 10:34:11
id:masi No.3

masi回答回数356ベストアンサー獲得回数02003/11/06 00:32:36

ポイント2pt

A1を右クリックし、セルの書式設定、配置を選択し、折り返して全体を表示するにチェックを入れればいいです。

id:smileless

上におなじです。

2003/11/06 10:34:29
id:kiichigo No.4

kiichigo回答回数167ベストアンサー獲得回数02003/11/06 01:14:47

ポイント2pt

http://www.hatena.ne.jp/10680

人力検索はてな

列ヘッダのAとBの間をダブルクリックする。

id:smileless

それでは列幅が大きくなってしまいます。

2003/11/06 10:34:47
id:lock-stock No.5

lock-stock回答回数90ベストアンサー獲得回数02003/11/06 02:37:05

ポイント2pt

http://www.tanabe-be.tanabe.kyoto.jp/world/excel.html

エクセルのテクニック集|授業素材集

A1のセル(灰色のA1と書いてあるセル)の境界線をドラッグして拡大してはどうでしょう。

文字が入りきるくらいのサイズにしておけば隠れることは無いですよ

id:smileless

上に同じです。

2003/11/06 10:35:06
id:hide-g No.6

hide-g回答回数7ベストアンサー獲得回数02003/11/06 08:38:54

ポイント2pt

A1のセル幅を変える。

もしくは、セルの書式設定の配置タグ内の

縮小して全体を表示するにチェックを付ければ

いいですよ。

id:smileless

文字の大きさの縮小もしたくないのです。

2003/11/06 10:35:26
id:kohsak No.7

kohsak回答回数18ベストアンサー獲得回数02003/11/06 11:17:55

ポイント2pt

どういう用途で使われるのかがわからないので、これでいいのかはわかりませんが。

B列を選択し、メニューバーより書式>列>表示しないをすると、質問の用件を満たせます。

ただし、IF関数が何か(””以外)を返す時も、その内容はもちろん表示されません。

id:smileless

ありがとうございます。

しかし、B列も空白の列として存在させたいのです。

2003/11/06 12:24:40
id:sasa4shi No.8

sassa1173回答回数6ベストアンサー獲得回数02003/11/06 11:38:46

ポイント10pt

それはExcelの仕様なので、無理だと思います。→隣接する右側のセルに値が入っていない場合、表示される。

どのような要件で使用したいのかを教えて頂くと解決案が出せるかもしれません。

id:smileless

ありがとうございます。

値というは条件文も含むのですよね。

これがネックになっていると思います。

A1、B1、C1セルはセル内のIF関数で条件に一致したときのみ1月から12月までの月を表示させるようにしています。条件に一致しない場合は””で設定しています。

しかし、セルの幅が半角2文字までしか表示することができないため(この幅は固定して動かしたくない)、A1とB1のセルが条件に一致したときには、10月以上になると文字列の月が切れてしまうのです。

A1が条件に合致した場合、もしB1に何も入っていなければ12月は表示されますよね。C1が条件に合致したときは表示されます。

if関数があるけれどもこの状態と同じように表示させたいと考えているのです。

ちなみに、A1からC1までは条件に合致する場合、どれか一つのセルのみ、という仕様になっています。

例えばA1のセルのみが条件に一致した場合、B1のセルとセルを結合する、ということはOKです。もともとB1のセルには何も入る予定はありませんので。しかし、その方法がわかりません。

2003/11/06 12:42:01
id:jsegawa No.9

jsegawa回答回数2ベストアンサー獲得回数02003/11/06 12:05:31

ポイント2pt

http://www.hatena.ne.jp/1068045

人力検索はてな

B列を非表示にしたらどうでしょうか。

B列は見えなくなりますが、C列の上に覆い被さって続きます。

id:smileless

上に同じで、すべての列は表示させたいのです。

すみません、先ほどの要件を訂正させてください。

A1、B1、C1セルはセル内のIF関数で条件に一致したときのみ

1月から12月までの月のどれか一つを表示させるようにしています。

例)=IF($A3=”1”,”10月”,””)

条件に一致しない場合は””で設定しています。

しかし、セルの幅が半角2文字までしか表示することができないため

(この幅は固定して動かしたくない)、A1のセルが条件に一致したときには、

10月以上になると文字列の月が切れてしまうのです(B1のセルは条件に一致していない) 。

A1が条件に合致した場合、もしB1に何も入っていなければ12月は表示されますよね。

C1が条件に合致したときはとなりのD1にはなにも入っていないので表示されます。

IF関数があるけれどもこの状態と同じように表示させたいと考えているのです。

ちなみに、A1からC1までは条件に合致する場合、どれか一つのセルのみ、という仕様になっています。

2003/11/06 12:48:27
id:ohmix1 No.10

ohmix1回答回数235ベストアンサー獲得回数142003/11/06 13:01:53

ポイント70pt

テキストボックスを利用してはいかがでしょうか。

A1,A2,A3それぞれにリンクしたテキストボックスを3つ作成し、同一セル上にすこし大きめのサイズで固定してはどうでしょう。

ただし、A1,A2,A3がすべて表示専用ならもんだいありません。

id:smileless

ありがとうございます。

試してみたのですが、やはり大き目のサイズにしますと、その部分が重なって見えなくなってしまいます。

と思ったのですが、テキストボックスの書式設定を変更して色を無しにしたらできました!

ただ、この横に続く列、100個あるんです。

お教えいただいた方法ですと、テキストボックスからのセルの参照は絶対参照の$ですので、一括で100個コピーしても後から中身を替えなければいけません。

また、場所の指定がかなり面倒です。

簡単にできる方法はありませんでしょうか?

2003/11/06 13:54:51
id:ohmix1 No.11

ohmix1回答回数235ベストアンサー獲得回数142003/11/06 13:28:42

ポイント44pt

10回答の説明URLより分かりやすいのを見つけました。

id:smileless

ありがとうございます。

テキストボックスのリンクの制限事項など、よくわかりました。

2003/11/06 13:56:43
id:sac No.12

sac回答回数29ベストアンサー獲得回数02003/11/06 13:49:36

ポイント10pt

http://www.hatena.ne.jp/1068045465

Excelで、A1のセルに「abcdef・・・・」と長い文字列を入れ、B1のセルに「=””」とした場合、A1のセルの文字がB1のセルを境にして見えなくなってしまいます(B1に何もな.. - 人力検索はてな

代替案...のつもりです。

(仕様の意味を取り違えていたら無視してください。)

Aには以下の計算式を入れる。

(計算式を組み合わせて全てA1に値を入れるようにする。)

=IF(A3=1,”10月”,IF(B3=1,”  11月”,IF(C3=1,”    12月”,””)))

””は入らなくなってしまいますので

B1を参照しているセルへの計算式は

変更前 =if(B1=””,true処理,false処理)

変更後1 =if(A1<>”11月”,true処理,false処理)

変更後2 =if(B3<>1,true処理,false処理)

などに変えていく。

id:smileless

スペースでずらす、という方法ですね。

これも考えたのですが、フォントの指定によって

文字の長さが変わってきますので、、、

また、A1〜C1まので各セルは条件付書式で月が入っていた場合のみセルの左の縦の枠を表示させるようにしているのです。

例)A1 B1 C1

|10月

|はセルの線のつもり・・・

2003/11/06 14:16:07
id:suihu No.13

suihu回答回数26ベストアンサー獲得回数02003/11/06 20:54:34

ポイント10pt

 再表示が手動になってしまいますけれど、マクロではどうでしょうか。

マクロならセルに””ではなくNullを入れることが出来るので、お望みの表示が得られます。

マクロは手動で実行しても良いし、

CTRL+英字の何かに割り当てることもできます。

-----------------

Sub sample()

Range(”A1:C10”).Select

Selection.ClearContents

For low = 1 To 10

If Cells(low, 4) = 1 Then

Cells(low, 1).Value = ”1月”

Cells(low, 2).Value = Null

Cells(low, 3).Value = Null

ElseIf Cells(low, 4) = 2 Then

Cells(low, 1).Value = Null

Cells(low, 2).Value = ”2月”

Cells(low, 3).Value = Null

End If

Next

End Sub

id:smileless

ありがとうございます。

2003/11/06 22:38:12
id:herecy8 No.14

herecy8回答回数55ベストアンサー獲得回数22003/11/06 22:14:34

ポイント10pt

いっそ全部マクロにしてしまうのはどうでしょうか。

(サンプル)

Sub test()

Dim 参照 As Long

Dim 月(12) As String

月(10) = ”10月”

月(11) = ”11月”

月(12) = ”12月”

参照 = Cells(1, 1)

With Range(Cells(2, 1), Cells(2, 3))

.ClearContents

.Borders.LineStyle = xlNone

End With

Select Case 参照

Case 1

With Cells(2, 1)

.Value = 月(10)

.Borders(xlEdgeLeft).LineStyle = xlContinuous

End With

Case 2

With Cells(2, 2)

.Value = 月(11)

.Borders(xlEdgeLeft).LineStyle = xlContinuous

End With

Case 3

With Cells(2, 3)

.Value = 月(12)

.Borders(xlEdgeLeft).LineStyle = xlContinuous

End With

End Select

End Sub

サンプルマクロは、A1の値を見て、A2:C2をクリアした後、1ならA2に10月、2ならB2に11月、3ならC2に12月と表示、セルの左に罫線をつけます。条件の中身がわからないのでここではケースごとに羅列しています。

id:smileless

みなさん、ありがとうございました。

2003/11/06 22:39:04
  • id:ohmix1
    回答10および11の補足

    回答権がつきましたのでいわしにも書いたのですが、念のためもう一度。

    >ただ、この横に続く列、100個あるんです。
    >お教えいただいた方法ですと、テキストボックスからのセルの参照は絶対参照の$ですので、
    >一括で100個コピーしても後から中身を替えなければいけません。

    「VBAマクロで自動作成する」くらいしか思いつきません。
    マクロを作るのはそれほど難しくないです。(作ってないけど)

    >また、場所の指定がかなり面倒です。

    これもマクロでやっつけてもいいのですが、もしマウスで微妙に移動しているのでしたら、セルにぴったりと合わせる方法があります。
    http://arena.nikkeibp.co.jp/tec/excel/gaz/217/

    でも、100個もあるならやっぱりマクロですね。
  • id:smileless
    Re:回答10および11の補足

    ありがとうございます。ALT同時押しでかなり作業が楽だったため、
    マクロを作成しなくてもなんとかできました。
    お世話になりました。

    >回答権がつきましたのでいわしにも書いたのですが、念のためもう一度。
    >
    >>ただ、この横に続く列、100個あるんです。
    >>お教えいただいた方法ですと、テキストボックスからのセルの参照は絶対参照の$ですので、
    >>一括で100個コピーしても後から中身を替えなければいけません。
    >
    >「VBAマクロで自動作成する」くらいしか思いつきません。
    >マクロを作るのはそれほど難しくないです。(作ってないけど)
    >
    >>また、場所の指定がかなり面倒です。
    >
    >これもマクロでやっつけてもいいのですが、もしマウスで微妙に移動しているのでしたら、セルにぴったりと合わせる方法があります。
    >http://arena.nikkeibp.co.jp/tec/excel/gaz/217/
    >
    >でも、100個もあるならやっぱりマクロですね。

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

絞り込み :
はてなココの「ともだち」を表示します。
回答リクエストを送信したユーザーはいません