- ベストアンサー
列の幅を文字列の長さに合わせて広げたい
列の幅を文字列の長さに合わせて広げたいと思い、 Cells.EntireColumn.AutoFit を使用してみたのですが、期待通りではありません。 どうすれば、良いのか教えて下さい。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
その他の回答 (1)
- temtecomai2
- ベストアンサー率61% (656/1071)
関連するQ&A
- CSSでボックス幅を文字列に合わせたい
ボックス幅を文字列の幅に合わせるにはどうしたらいいのでしょうか。 テーブルではセルにwidth属性を指定しなくても文字列の幅になりますが、ボックスではwidthプロパティを指定しなかったら領域全体の幅になります。white-spaceプロパティでnowrap指定し、widthプロパティで文字列より小さいサイズに指定するとできるのですが、他に指定する方法があれば教えて下さい。
- ベストアンサー
- HTML
- プロポーショナルフォントの文字列から印刷幅を求める関数
フォントと文字列を指定して必要なピクセル数を求める関数はありますか 備考欄なのですが2文字程度のあふれなら縮小、それ以上なら改行して全体表示させるマクロを作りたいのです 固定長フォントにすれば文字数から判断できますがPフォントなので 別シートに該当文字列を入れてAutoFitして求めることも考えましたがあまりスマートじゃないで 何かで見た記憶があるのですがVBAじゃなかったのか探しても見つから無かったので質問させていただきます。
- ベストアンサー
- オフィス系ソフト
- EXCELの列複数削除
VB6.0で開発しています。 下のようにEXCELの列を複数削除していますが 思うように削除されません。 削除はされるのですが B列を削除してから次C列を削除となってしまっているので C列を削除する時は元々のC列ではなく B列を削除してからのC列を削除してしまいます。 どう直せばいいのでしょうか? お願いします。 Private Sub Command2_Click() Dim xlApp As Excel.Application Dim xlBook As Excel.Workbook Dim xlSheet As Excel.Worksheet Dim B As Integer Dim C As Integer Dim D1 As Integer Dim E As Integer Dim G As Integer Dim H As Integer Dim K As Integer Dim L As Integer Dim M As Integer Dim N As Integer Dim P As Integer Dim R As Integer Dim T As Integer Dim U As Integer Dim V As Integer Dim Y As Integer Dim Z As Integer Dim AA As Integer Dim AB As Integer Dim AC As Integer Dim AD As Integer Dim AE As Integer Dim AF As Integer Dim AG As Integer Dim AH As Integer Dim AI As Integer Dim AJ As Integer Dim AL As Integer Dim AM As Integer Dim AP As Integer Dim AQ As Integer Dim AR As Integer Set xlApp = CreateObject("Excel.Application") Set xlBook = xlApp.Workbooks.Open("C:\Users\maki\Documents\Book1") Set xlSheet = xlBook.Worksheets("Sheet1") xlApp.Visible = True B = 2 C = 3 D1 = 4 E = 5 G = 7 H = 8 K = 11 L = 12 M = 13 N = 14 P = 16 R = 18 T = 20 U = 21 V = 22 Y = 25 Z = 26 AA = 27 AB = 28 AC = 29 AD = 30 AE = 31 AF = 32 AG = 33 AH = 34 AI = 35 AJ = 36 AL = 38 AM = 39 AP = 42 xlSheet.Cells(1, C).EntireColumn.Delete xlSheet.Cells(1, D1).EntireColumn.Delete xlSheet.Cells(1, E).EntireColumn.Delete xlSheet.Cells(1, G).EntireColumn.Delete xlSheet.Cells(1, H).EntireColumn.Delete xlSheet.Cells(1, K).EntireColumn.Delete xlSheet.Cells(1, M).EntireColumn.Delete xlSheet.Cells(1, N).EntireColumn.Delete xlSheet.Cells(1, P).EntireColumn.Delete xlSheet.Cells(1, R).EntireColumn.Delete xlSheet.Cells(1, T).EntireColumn.Delete xlSheet.Cells(1, U).EntireColumn.Delete xlSheet.Cells(1, V).EntireColumn.Delete xlSheet.Cells(1, Y).EntireColumn.Delete xlSheet.Cells(1, Z).EntireColumn.Delete xlSheet.Cells(1, AA).EntireColumn.Delete xlSheet.Cells(1, AB).EntireColumn.Delete xlSheet.Cells(1, AC).EntireColumn.Delete xlSheet.Cells(1, AD).EntireColumn.Delete xlSheet.Cells(1, AE).EntireColumn.Delete xlSheet.Cells(1, AF).EntireColumn.Delete xlSheet.Cells(1, AG).EntireColumn.Delete xlSheet.Cells(1, AH).EntireColumn.Delete xlSheet.Cells(1, AI).EntireColumn.Delete xlSheet.Cells(1, AJ).EntireColumn.Delete xlSheet.Cells(1, AL).EntireColumn.Delete xlSheet.Cells(1, AM).EntireColumn.Delete xlSheet.Cells(1, AP).EntireColumn.Delete Set xlApp = Nothing Set xlBook = Nothing Set xlSheet = Nothing End Sub
- ベストアンサー
- Visual Basic
- 文字列の長さを知りたい
文字列を表示した場合文字によって幅が違うので 文字数×一つの文字の幅で文字列の長さがでません 文字列の長さがでないとエジタを作る場合に カレットをどこにおいていいのかわかりません (例えばフォントによってはiiiよりwwwの方が長い) 文字列の長さを知る方法はないのでしょうか?
- ベストアンサー
- C・C++・C#
- 列の幅が突然狭くなった
エクセル2007(SP1)を使用しています 普通に入力をしていたら、突然、列の幅が狭くなりました(A列が14.88→2.38) 列を直接操作したわけではありません どうしてこのような現象が起こるのでしょうか よろしく御願いします
- 締切済み
- オフィス系ソフト
- Word2007[文字列の幅に合わせる]と[列罫線ををダブルクリックし
Word2007[文字列の幅に合わせる]と[列罫線ををダブルクリックして自動調整]の違い Word2007 の表の作成について質問です。 列罫線を調整するときに、[自動調整]→[文字列の幅に合わせる]と 列罫線をつかんでダブルクリックして自動調整したときでは列の幅が違うのですが どちらの操作でも同じ結果になりそうなのに違いがでるのが不思議です。 なぜ違いがでるのでしょうか?
- ベストアンサー
- オフィス系ソフト
- Excel VBA AutoFit の制約について
お世話になります。 Excel2010(Windows7) VBA にて、セル幅が自動調整 されず表示が「###」のままの場合があるのですが、 Cells.Select: Cells.EntireColumn.AutoFit 実行において何か成約事項等ございますでしょうか? また、次のコードを使用した場合も、自動調整されない 場合もありました(殆どは自動調整されるのですが)。 その際は(記憶が曖昧ですが)「.EnableEvents = False」 をコメントアウトすると自動調整されました。 同一Bookの中でも、ルーチンによって動きが異なります。 With Application .ScreenUpdating = False .EnableEvents = False .Calculation = xlCalculationManual End With ・・・ Cells.Select Cells.EntireColumn.AutoFit ・・・ With Application .ScreenUpdating = True .EnableEvents = True .Calculation = xlCalculationAutomatic End With 情報不足で申し訳ございませんが よろしくお願い申し上げます。
- ベストアンサー
- Visual Basic
- ExcelVBA 列の幅に収まらない文字列を下へ
お世話になります。 セル書式の折り返し・縮小・結合を使用しないで、 列の幅に収まらない文字列を下の行のセルへ表示させる方法を模索しています。 Application.DisplayAlerts = False Range("A1").Justify で出来るらしいと書物を頼りに実施していますが、下の行のセルへ表示出来ません。 他の方法も含めて、実現方法はあるでしょうか? よろしくお願いします。
- ベストアンサー
- Visual Basic
- ワードの文字列同士(上と下の列の幅)の変更について
はじめまして。 ワードについて(ワード2003)お伺いします。 ワードの文字列同士(上と下の列の幅)の変更はどのようにやるのか教えていただけないでしょうか?
- ベストアンサー
- オフィス系ソフト
お礼
ありがとうございました。 訂正があります。 WorkBooks("c:\test.als")は WorkBooks.Open("c:\test.als") です。すみません。
補足
Excel 2002 SP3ではうまくいきましたが、Excel 2003 SP3 ではうまくいきません。文字列長に合わせて広がりません。 WorkBooks("c:\test.als") Sheets("aaa").Select Worksheets("aaa").Activate Cells.EntireColumn.AutoFit で試してみました。 シートaaaの1行目の1列目に 文字列abcdefghijikelmno を設定し実行しました。