サンプル投稿用掲示板 VB2005 〜 用トップページ VB6.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
|