tagCANDY CGI VBレスキュー(花ちゃん) - VBレスキュー(花ちゃん)の投稿サンプル用掲示板 - Visual Basic 6.0 VB2005 VB2010
VB2005用トップページへVBレスキュー(花ちゃん)のトップページVB6.0用のトップページ
VBレスキュー(花ちゃん)の投稿サンプル用掲示板
     サンプル投稿用掲示板  VB2005 〜 用トップページ  VB6.0 用 トップページ
クリップボードのデータから要素数(列数)を数えるには(VB6.0) ( No.0 )  [親スレッドへ]
日時: 2007/09/13 05:34
名前: 花ちゃん

***********************************************************************************
* カテゴリー:[グリッド関係][クリップボード][エクセル]                            *
* キーワード:CSVファイル,列数,行数,MSHFlexGrid,,                                 *
***********************************************************************************

元質問:クリップボードのデータから要素数を数える.. - NM  2004/12/28-16:39 No.1390

エクセルで複数のセルを選択し、コピーしたものをクリップボードからMSFlexGridに貼り付けようとしています。
いま、悩んでいることは、選択するデータ数が毎回異なる場合、クリップボードのデータをセットする時に、MSFlexGridの貼り付け終了位置の設定をどうしたら良いのかという点です。
ちなみに1列×複数行のデータを扱おうとしているのですが、クリップボードの要素数を数える方法を解っておりません。


----------------------------------------------------------------------------------
Re^3: クリップボードのデータから要素数を.. - 花ちゃん  2004/12/28-18:37 No.1394
----------------------------------------------------------------------------------
テスト結果のままのコードなので、参考までに。

Private Sub Command2_Click()
    Dim myDate As String
    Dim cpCol As Integer
    Dim cpRow As Integer
    Dim myCol As Integer
    Dim myRow As Integer
    If Clipboard.GetFormat(vbCFText) Then
        myDate = Clipboard.GetText
    End If
    cpRow = UBound(Split(myDate, vbCrLf))
    If cpRow > 0 Then
        cpCol = (UBound(Split(myDate, vbTab)) / cpRow) + 1
    End If
    If cpRow = 0 Or cpCol = 0 Then Exit Sub
    myCol = 2
    myRow = 2
    With MSFlexGrid1
        .Col = myCol
        .Row = myRow
        .RowSel = myRow + cpRow - 1
        .ColSel = myCol + cpCol - 1
        .Clip = myDate
    End With
End Sub




 [スレッド一覧へ] [親スレッドへ]