クリップボードの Excel データを取得する

文書番号 : 22497     文書種別 : 使用方法     最終更新日 : 2006/09/02
文書を印刷する
対象製品
El Tabelle MultiRow 4.0J
詳細
Excel でコピーしたデータを Sheet に貼り付ける直前に取得するには、ClippingData イベントを使用します。

[Visual Basic]
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) _
  Handles MyBase.Load
  MultiRowSheet1.AllowClipboard = True
End Sub

Private Sub MultiRowSheet1_ClippingData(ByVal sender As System.Object, _
  ByVal e As GrapeCity.Win.ElTabelle.ClippingDataEventArgs) _
  Handles MultiRowSheet1.ClippingData
  If e.ClippingAction = GrapeCity.Win.ElTabelle.ClippingAction.Paste Then
    Dim stream As System.IO.MemoryStream = _
      e.Data.GetData("XML Spreadsheet")
    Dim reader As New System.Xml.XmlTextReader(stream)
    reader.MoveToContent()
    Dim str As String = reader.ReadInnerXml()
    Console.WriteLine(Str)
    e.Cancel = True
  End If
End Sub


[C#]
private void Form1_Load(object sender, EventArgs e)
{
  multiRowSheet1.AllowClipboard = true;
}

private void multiRowSheet1_ClippingData(object sender, GrapeCity.Win.ElTabelle.ClippingDataEventArgs e)
{
  if (e.ClippingAction == GrapeCity.Win.ElTabelle.ClippingAction.Paste)
  {
    System.IO.MemoryStream stream = (System.IO.MemoryStream)e.Data.GetData("XML Spreadsheet");
    System.Xml.XmlTextReader reader = new System.Xml.XmlTextReader(stream);
    reader.MoveToContent();
    string str = reader.ReadInnerXml();
    Console.WriteLine(str);
    e.Cancel = true;
  }
}
キーワード
HowTo

この文書は、以前は次のFAQ IDで公開されていました : 9577