セルの値のみのペースト機能を実装する方法
対象製品
SPREAD for Windows Forms 8.0J
詳細
セルのコピー&ペースト(またはカット&ペースト)を行った場合、デフォルト定義では値・書式・数式を含むすべてのデータオブジェクトを貼り付けますが、ここでは値のみをペーストする方法をいくつか紹介します。用途に合わせてご活用ください。
◎方法1:入力マップの定義による実装
デフォルトの入力マップでは、[Ctrl]+[V]による動作には「ClipboardPasteAll」が定義されています。
この定義を「ClipboardPasteValues」に変更することで、値のみのペースト機能を実装できます。
◎サンプルコード(VB)
◎サンプルコード(C#)
◎方法2:ClipboardPasteメソッドの使用による実装
SheetViewクラスより提供されているClipboardPasteメソッドを利用し、貼り付けオプションを指定することで値のみのペースト機能を実装できます。
◎サンプルコード(VB)
◎サンプルコード(C#)
◎方法1:入力マップの定義による実装
デフォルトの入力マップでは、[Ctrl]+[V]による動作には「ClipboardPasteAll」が定義されています。
この定義を「ClipboardPasteValues」に変更することで、値のみのペースト機能を実装できます。
◎サンプルコード(VB)
Imports FarPoint.Win.Spread
Private Sub Form1_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles MyBase.Load
Dim im As New InputMap
im = FpSpread1.GetInputMap(InputMapMode.WhenFocused)
im.Put(New Keystroke(Keys.V, Keys.Control), SpreadActions.ClipboardPasteValues)
End Sub
Private Sub Form1_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles MyBase.Load
Dim im As New InputMap
im = FpSpread1.GetInputMap(InputMapMode.WhenFocused)
im.Put(New Keystroke(Keys.V, Keys.Control), SpreadActions.ClipboardPasteValues)
End Sub
◎サンプルコード(C#)
using FarPoint.Win.Spread;
private void Form1_Load(object sender, System.EventArgs e)
{
InputMap im;
im = fpSpread1.GetInputMap(InputMapMode.WhenFocused);
im.Put(new Keystroke(Keys.V, Keys.Control), SpreadActions.ClipboardPasteValues);
}
private void Form1_Load(object sender, System.EventArgs e)
{
InputMap im;
im = fpSpread1.GetInputMap(InputMapMode.WhenFocused);
im.Put(new Keystroke(Keys.V, Keys.Control), SpreadActions.ClipboardPasteValues);
}
◎方法2:ClipboardPasteメソッドの使用による実装
SheetViewクラスより提供されているClipboardPasteメソッドを利用し、貼り付けオプションを指定することで値のみのペースト機能を実装できます。
◎サンプルコード(VB)
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
FpSpread1.ActiveSheet.ClipboardPaste(FarPoint.Win.Spread.ClipboardPasteOptions.Values)
End Sub
FpSpread1.ActiveSheet.ClipboardPaste(FarPoint.Win.Spread.ClipboardPasteOptions.Values)
End Sub
◎サンプルコード(C#)
private void button1_Click(object sender, System.EventArgs e)
{
fpSpread1.ActiveSheet.ClipboardPaste(FarPoint.Win.Spread.ClipboardPasteOptions.Values);
}
{
fpSpread1.ActiveSheet.ClipboardPaste(FarPoint.Win.Spread.ClipboardPasteOptions.Values);
}
キーワード
クリップボード