| 
    
     |  | ▼亜矢 さん: 
 > 現状は下のように固定で表示していますが、ある何番目かがデータ量が
 > 多いことはわかっています。(何番目かはデータによって変わります)
 
 その何番目を広げるのかは、別途、既存ロジックで把握している列番号を
 指定するのですか?
 それとも、どの列が広げるべき列かの判定コードもお望みですか?
 その場合は、判定要件を説明いただかないと回答ができませんね。
 
 また、広げるのは、どれか1列だけですか?
 
 > .ColumnWidths = "140;60;60;60;60;60;60;60;60;60;60;60;100"
 
 広げる列幅はどう考えたらいいのですか?
 たとえば 1列目を広げるとすれば 140 を いくつにするのですか?
 2列目ならどうなりますか?13列目ならどうなりますか?
 
 あるいは、各列、ぴったりの列幅を自動設定ですか?
 (これは、文字フォントとの関連もありますので至難の技に近いかもですが)
 
 いずれにしても、ColumnWidths に与えるものは【文字列】ですから、
 以下のようにして作成した文字列をセットすればよろしいかと。
 
 Sub Test()
 Dim v As Variant
 Dim x As Long
 Dim cw As Long
 
 v = VBA.Array(140, 60, 60, 60, 60, 60, 60, 60, 60, 60, 60, 60, 100)
 x = 5    '変更列番号
 cw = 80   '新しい列幅
 
 v(x - 1) = cw
 
 MsgBox Join(v, ";")
 
 End Sub
 
 |  |