You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Delphi运行时如何将剪贴板内容粘贴至Excel表格

解决方案:运行时将Windows剪贴板内容粘贴到Excel电子表格

要实现剪贴板内容粘贴到Excel,核心是通过Excel的OLE对象调用粘贴方法,以下是修改后的完整代码及关键说明:

修改后的完整代码

uses Vcl.Clipbrd, System.Win.ComObj{CreateOLEObject};
var
  xls, wb, ws: OLEVariant;
begin
  try
    // 创建Excel应用实例
    xls := CreateOLEObject('Excel.Application');
    // 创建新工作簿
    wb := xls.Workbooks.Add;
    // 获取第一个工作表
    ws := wb.Worksheets[1];

    // 清空剪贴板并设置测试文本
    Clipboard.Clear;
    Clipboard.AsText := 'Test Text';

    // 方法1:选中目标单元格后粘贴
    ws.Range['A1'].Select;
    xls.Selection.Paste;

    // 方法2:直接指定单元格粘贴(无需选中)
    // ws.Range['A1'].PasteSpecial;

    // 显示Excel窗口
    xls.Visible := True;
  except
    on E: Exception do
    begin
      MessageDlg('错误信息:' + E.Message, mtWarning, [mbOk], 0);
    end;
  end;
end;

关键说明

  • 必须先获取工作表对象ws,用于定位粘贴的目标位置;
  • 如果需要精准控制粘贴类型(如仅粘贴文本、保留格式等),可使用PasteSpecial方法,并指定对应的参数:
    // 仅粘贴文本内容(xlPasteValues对应数值-4163)
    ws.Range['A1'].PasteSpecial(-4163);
    

内容的提问来源于stack exchange,提问作者Yuppski

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.20 01:19:53