[リストへもどる]   [VBレスキュー(花ちゃん)]
一括表示

投稿時間:2005/03/03(Thu) 16:18
投稿者名:ももたろう
Eメール:
URL :
タイトル:
MSHFlexGridでの列幅自動調整について
MSHFlexGridに表示した時に、列を読み込んだ文字列の長さに自動調整して
表示したいのですが、そういうことはできますか?
また、列は20列くらいあり、文字列の長さはまちまちで統一されていません。

下記に表示している部分のコードを明記します。
  Dim strSQL          As String
    Dim i               As Long
    Dim rst             As DAO.Recordset
    Dim DB              As DAO.Database
    
    strSQL = "SELECT * FROM CR5000 WHERE SearchCode like '" & cboSearchCode.Text & _
            "' and partName like '" & txtpartName.Text & _
            "' and partcode like '" & txtPartCode.Text & _
            "' and GTCode like '" & txtGTCode.Text & _
            "' and Maker like '" & txtMaker.Text & _
            "' and MakerCode like '" & txtMakerCode.Text & _
            "' and value like '" & txtValue.Text & _
            "' and NumberOfPin like '" & txtNumberOfPin.Text & "'"
    Debug.Print strSQL
    Set DB = OpenDatabase(App.Path & "\cr5000.mdb")
    Set rst = DB.OpenRecordset(strSQL)

  i = 1
    frmMain.MSHFlexGrid1.Visible = False
    frmMain.MSHFlexGrid1.ColAlignment(-1) = flexAlignLeftCenter     '全ての値を左寄せ中央に
表示
    With rst
        'カレントレコードをテーブルの先頭に移動
        Do While Not .EOF
            With frmMain.MSHFlexGrid1
                .AddItem ""
                .TextMatrix(i, 0) = rst![RecommendedByIDC]
                .TextMatrix(i, 1) = rst![partName]
                .TextMatrix(i, 2) = rst![PartsClass]
                .TextMatrix(i, 3) = rst![PartCode]
                .TextMatrix(i, 4) = rst![GTCode]
                .TextMatrix(i, 5) = rst![Maker]
                .TextMatrix(i, 6) = rst![MakerCode]
                .TextMatrix(i, 7) = rst![JapanesePartsName]
                .TextMatrix(i, 8) = rst![EnglishPartsName]
                .TextMatrix(i, 9) = rst![Price]
                .TextMatrix(i, 10) = rst![DiscontinuedParts]
                .TextMatrix(i, 11) = rst![NumberOfPin]
                .TextMatrix(i, 12) = rst![Value]
            End With
            i = i + 1
            .MoveNext
        Loop
        .Close
    End With
    frmMain.MSHFlexGrid1.Visible = True
  DB.Close
    Set rst = Nothing
    Set DB = Nothing

投稿時間:2005/03/03(Thu) 17:11
投稿者名:花ちゃん
Eメール:
URL :
タイトル:
Re: MSHFlexGridでの列幅自動調整について
そういったメソッド等は用意されていませんので、その列で一番長い文字列を
調べてその文字列の幅に合わせて設定して下さい。
多分、過去のログ等検索すれば見つかるかも。

hhttp://www.google.com/search?hl=ja&inlang=ja&sitesearch=http%3A%2F%2Fwww.bcap.co.jp&q=hanafusa%E3%80%80%E5%88%97%E5%B9%85%E3%80%80MSFlexGrid&btnG=Google+%E6%A4%9C%E7%B4%A2&lr=lang_ja





hhttp://www.bcap.co.jp/hanafusa/logbbs/wforum.cgi?mode=past で[列幅 FlexGrid]を
キーワードで検索して見てください。
(Re: MsFlexGridの列幅変更 - AK 12/08-14:36 No.6946)
調べる気があるなら幾らでも見つかりますよ。

投稿時間:2005/03/03(Thu) 18:45
投稿者名:ももたろう
Eメール:
URL :
タイトル:
Re^2: MSHFlexGridでの列幅自動調整について
花ちゃん返信ありがとうございます。

この掲示板を何度も利用していながら、過去ログは利用した事がありませんでした。
これを期に活用していきたいです。

質問の件も過去ログで調べて再チャレンジしてみます。
ありがとうございました。