簡體   English   中英

循環瀏覽所有打開的 Excel 工作簿

[英]Loop through all open excel workbooks

我正在嘗試使用 C# 構建 Excel 加載項。 我正在使用本教程 到目前為止還好,但我對這部分代碼有問題:

private void PopulateWorkbooks()
{
    var excel = Globals.ThisAddIn.Application;
    var workbooks = excel.Workbooks;
    foreach (var workbook in workbooks)
    {
        var book = workbook as Excel.Workbook;
        if (book != null)
        {
            var workbookViewModel = new WorkbookViewModel(book);
            this.workbookViewModels.Add(workbookViewModel);
        }
    }
}

workbooks集合中沒有工作簿。 代碼不會循環......

有任何想法嗎?

只需向您的表單添加一個列表框,輸入此代碼,您就可以開展業務了。

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using Microsoft.Office.Interop.Excel;

namespace WindowsFormsApplication1
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        Microsoft.Office.Interop.Excel.Application XL = null;

        private void Form1_Load(object sender, EventArgs e)
        {
            XL = (Microsoft.Office.Interop.Excel.Application)System.Runtime.InteropServices.Marshal.GetActiveObject("Excel.Application");
            foreach (Microsoft.Office.Interop.Excel.Workbook _wb in XL.Workbooks)
            {
                this.listBox1.Items.Add(_wb.Name.ToString());
            }
        }
    }
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM