重要なお知らせ

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

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

マクロにより列幅の設定をしたいのですが、さいていこの大きさってのを設定したいです。

自動で列幅を調整すると、あまりにも小さくなる列があり、
表を見るときにぐちゃぐちゃしてとても見ずらいです。

表は後ろ側(右側)に追加していくわけではなく、左側の項目のあとF5に挿入という形で追加しています。(印刷の都合で)
なのでセルのサイズがころころ変わらないととても大きくなり大変です。
そこで自動でやったらこんどは小さすぎるのが出てきて...
最低120ピクセル(14.38)で上限の設定はいりません。

まず、このような処理は可能なのでしょうか?
もし可能ならどういう方法をとればいいのか教えてもらえるとたすかります。
皆さんご教授おねがいします。

当方初心者で右も左もわからず、調べてもわからなかったので質問させていただきます。

A 回答 (2件)

こんにちは



セルの幅の設定(14.38)は、どうやら「標準フォントとして設定されているフォントの文字数」ということのようなので、標準フォントが変わると値も変えなければならなさそうですが・・
ちょっと面倒なので、そこのところはおいておいて、そのまま設定する例です。
(120ピクセルが優先なのだと想像しますが、ちゃんとやれば換算可能です)

ご質問文からは対象とする範囲がわからないので、とりあえず10列分(A~J列)を自動設定してから、幅が14.38より小さい場合には14.38に再設定するというマクロです。

Sub Sample()
Dim col As Long

For col = 1 To 10
Columns(col).AutoFit
If Columns(col).ColumnWidth < 14.38 Then Columns(col).ColumnWidth = 14.38
Next col

End Sub
    • good
    • 0
この回答へのお礼

回答ありがとうございます。

対象とする範囲は最終行なるものを使い自分なりに出来ました。
120ピクセルの件下調べもせずにすいませんでした。
表示が二つありどちらもかいておけばなんとかなるだろうと安直に考えていました。

おかげさまでマクロにより動作するようになりました。

お礼日時:2017/07/24 08:37

翠星さんが作っている表って、見出し行は無いのですか?


もし、見出し行があるのであれば、小さくなってしまう列の見出しに、いくつか空白を入れておけば、その分の幅が確保できますよ。
マクロを使うほどの事でもないような気がします。
    • good
    • 0
この回答へのお礼

見出し行というか日付を記入していてます。
上にセルが開いているので確かに空白を入れるのもアリなんですが、
データが増えるたびにいちいち設定するのが大変でしたのでマクロで可能かということでした。

お礼日時:2017/07/24 08:32

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