如何使用剪贴板将数据从.NET应用程序移动到Excel?

Excel是从剪贴板接收数据的首选格式? 数据位于C#/ .NET应用程序中。

我一直以CSV格式保存到剪贴板,但现在我想开始提供Excel格式信息(例如,使某些单元格为粗体)。 CSV格式已经不够了。


当我从Excel复制时,剪贴板可以保存24种格式!

System.Windows.Clipboard.GetDataObject().GetFormats().Dump(); 
  • EnhancedMetafile
  • System.Drawing.Imaging.Metafile
  • METAFILEPICT
  • 位图
  • System.Drawing.Bitmap
  • System.Windows.Media.Imaging.BitmapSource
  • BIFF12
  • BIFF8
  • BIFF5
  • SymbolicLink
  • DataInterchangeFormat
  • XML电子表格
  • HTML格式
  • 文本
  • UnicodeText
  • System.String
  • CSV
  • 富文本格式
  • embedded来源
  • 对象描述符
  • 链接源
  • 链接源描述符
  • 链接
  • Format129
  • *

我相信你所看到的是,当你以许多不同的格式复制到剪贴板时,Excel准备数据取决于你最终粘贴到哪里。 您可能需要查看Excel的Office XML格式。

看到这个例子在维基百科xml更好的想法的格式。 虽然我以前从来没有用过,但我确信Excel只是让你直接粘贴到XML中(如果是正确的模式)。