[[20040819201406]] 『列幅を取得する関数』(脱初級) ページの最後に飛ぶ

[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]

 

『列幅を取得する関数』(脱初級)

列幅をセルに表示させたいのですが、例えば、B1セルにB列の列幅を数値表示して、
B列の列幅を変えるたびにB1のセルの値が自動的に更新されるような関数を書くこと
は可能でしょうか?
ご教授よろしくお願い申し上げます。


 =CELL("width",B1)
 ですが、
 小数点以下を切り捨てた整数になり
 列幅を変えたとき [F9]キーで再計算が必要です。 (jun53)


 もし、小数点以下も必要であれば、ユーザー関数ではいかがでしょうか?

 Alt+F11でVisual Basic Editor を起動し、[挿入]-[標準モジュール]、以下のコードを貼り付けます。

 Function haba(retsu As Range)
     haba = Columns(retsu.Column).ColumnWidth
 End Function

 エクセル上で、=haba(B1)と入力すると、B列の幅が表示されます。

 B列の幅が変わったら、再計算する必要があるのですが・・・。
 いかがでしょうか?

 jun53様>小数点以下を切り捨てた整数になり
 jun53様、すみません。私の環境(Excel2003,WindowsXP)では、
  小数点以下を切り捨てではなく、四捨五入になったのですが・・・。
 すみません。(まこ)


 あらっ、[四捨五入] そうですね。

 こんな関数もあったなと確かめもせず書いて、ヘルプをそのままに書いてしまいました。
失礼しました。
Lotus 1-2-3 だと、@CELL() で行、列きっちりと出してくれたので便利でしたが...
Lotus 1-2-3 との互換関数のようですね。

 様付きだとチョットくすぐったいです〜  (jun53)


 いえいえ、様です。
 皆様の長いマクロや、関数を複雑に組み合わせた回答をみていますと、すごいなぁ!! という思いです。(まこ)


 横から失礼します。セル幅を出してくれる関数があったなんて驚きました。
ところで、この関数などはどのような場合に使用すると便利なのでしょうか?
私のようなEXCEL初心者には、全く見当もつかないんですが。
もしよろしければ簡単な例などあげて頂ければ嬉しいのですが。(KI)


 今確認しました。Excel 2000 ヘルプでも同様に[切り捨てた整数] と書いてあります。
ヘルプを信用できなくなった??

 [脱初級]さんの返信が無いままでの書き込みは心苦しいのですが、
以前、列幅取得を活用したのは(Lotus でしたが)
A4版に納めたい複雑なレイアウト表を作るときです。
例えば、3×8の宛名ラベルの中に式を入れて金額等も表示させたい、など。
行、列結合や切取線を織り交ぜて、市販ラベルでは出来ないようなものでしたが(数十回の試行錯誤有り)
作って、2回程使用して、今はお蔵入りです。

 微妙な調整が必要なので、[まこ]さんが作った  =haba(B1) が、いいかもですね。
[まこ]さん、[KI]さん、私はこれでオヤスミナサイ です。  (jun53)


 jun53さんどうも有難うございました。(KI)


1日見ていなかったので、レスが遅れ、大変失礼致しました。
大変参考になりました。ありがとうございます。

新しい質問で、今度は行の高さを取得するにはどうすればよいのか、別にスレッド
を上げましたので、ご教授よろしくお願い申し上げます。
みなさま、ありがとうございました。


 これは、一つにまとまっているほうが良いと判断しました。
 こちらに統合しました。
(kazu)


『行の高さを取得して表示したい』(脱初級)

いつも勉強させて頂いております。
ありがとうございます。

さて、B2セルにそのセルのある2行目の行の高さを取得して数値表示し、高さを
変えると、自動的に値が変わるようにするには、どうすればよいのでしょうか?
列幅とちがって、CELL関数を使うことができません。
ご教授、よろしくお願い申し上げます。


 Function takasa(gyou As Range)
     takasa = Rows(gyou.Row).RowHeight
 End Function
で、いかがでしょうか?
 ところで、なんにお使いになるのですか?(まこ)


 「挿入」「名前」「定義」で
名前
Height
参照範囲
=GET.CELL(17)+NOW()*0

 行高さを取得したいセルへ
=Height
F9で再計算です。
(KAMIYA)


まこ様、KAMIYA様、ありがとうございました。

ところで、なんにお使いになるのですか?


ワークシート内の表をよく更新するのですが、印字の都合上、よくデータがはみ
でたりします。定型の表なので、他のシートへコピーすることもよくあります。
その際、コピーした表のレイアウトを素早く揃えるには、行列の幅・高さがは
っきり表示されていると、コピーした先のワークシート上で整形するのに便利
です。この理由から今回の質問をしました。
ありがとうございました。
(脱初級)


書式のコピーをしたほうが早いような。。。
すみません(ろん)


 こちらに統合しました。
(kazu)

コメント返信:

[ 一覧(最新更新順) ]


YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki. Modified by kazu.