现在从错误来看是操作系统剪切板出错了,具体原因无法确定,比如其他程序占用剪切板也会出这个问题。
对于您的需求,可以通过循环将您需要的信息获取后,然后设置到新的spread中即可
- for (var i = 0; i < 5; i++)
- {
- for (var j = 0; j < 5; j++)
- {
- var formula = fpSpread1.ActiveSheet.Cells[i, j].Formula;
- if (string.IsNullOrEmpty(formula))
- {
- fpSpread2.ActiveSheet.Cells[i, j].Value =
- fpSpread1.ActiveSheet.Cells[i, j].Value;
- }
- else
- {
- fpSpread2.ActiveSheet.Cells[i, j].Formula = formula;
- }
- var style = fpSpread1.ActiveSheet.GetStyleInfo(i, j);
- if (style != null)
- {
- fpSpread2.ActiveSheet.SetStyleInfo(i, j, style);
- }
- }
- }
复制代码 |