剪切和粘贴整个Excel列

本文关键字:Excel | 更新日期: 2023-09-27 17:54:27

我正在寻找一些关于如何剪切并在Excel中粘贴整个列的示例代码。

剪切和粘贴整个Excel列

假设您知道如何剪切和粘贴范围,那么只需使用列字母指定范围。如。Range("A:A")指定整个a列

下面是剪切和粘贴一行的示例。将其转换为列应该很简单

我的第一个问题是-你必须从Excel文件中读取吗?是否有可能导出为CSV或其他文件。这可能更容易。

否则,你可以这样做(假设你已经有了对Excel对象的引用):

xlobj.workbook("workbook1.xls").sheets("Sheet1").Columns("C:C").Cut
xlobj.workbook("workbook1.xls").sheets("Sheet1").Columns("A:A").Paste
使用Microsoft Excel 12.0对象库(Microsoft. office . interop .Excel)
Application app = new Application();
Workbook wb = app.Workbooks.Open("test.xlsx");
Worksheet ws = wb.Sheets["MyTestSheet"];
Range rngSource = ws.UsedRange.Columns["A"];
Range rngTarget = ws.UsedRange.Columns["D"];
rngTarget.Value = rngSource.Value;
rngSource.Value = null;
wb.Save();
app.Application.Quit();

您可以用更少的代码行完成相同的工作,但出于演示目的,我已经这样写了。请记住,上面的代码违反了"在引用COM对象时不要使用2个点",这可能会导致处理COM对象的麻烦,并留下僵尸Excel进程。

使用' entirecoln '属性,这就是它的作用:

string rangeQuery = "A1:A1";
Range range = workSheet.get_Range(rangeQuery, Type.Missing);
range = range.EntireColumn;