标签: excel-2007

VSTO问题 - 无法创建visual studio excel工作簿项目

当我尝试创建Excel 2007工作簿项目时,在Visual Studio 2008中,我得到以下错误消息:

无法创建项目,因为"Excel Visual Studio设计时适配器加载项"无法正常工作.Excel可能已禁用加载项或使其处于非活动状态,或者可能在信任中心设置中禁用所有加载项.在Excel选项中检查加载项状态.如果加载项处于活动状态并已启用,请重新安装或修复Visual Studio Tools for Office.

我已经验证加载项未处于非活动状态或已禁用,我已尝试多次修复和卸载/重新安装VSTO.

该怎么办?

c# vsto excel-2007 visual-studio-2008

2
推荐指数
1
解决办法
8305
查看次数

如何使用带有c#的OpenXML SDK v2.0将新工作表添加到Excel .xlsx文件中?

刚刚发布了我今天制定的解决方案。请参阅下面的答案。

如果您没有非常有用的OpenXML SDK v2.0工具,则可以在以下网址找到它:http://www.microsoft.com/downloads/details.aspx? FamilyID=C6E744E5-36E9-45F5-8D8C-331DF206E0D0&displaylang=en

如果您知道我用“我不知道...”注释的行的目的,请留下评论以解释它们。

c# excel-2007 openxml-sdk

2
推荐指数
1
解决办法
9053
查看次数

如何删除Excel单元格中的特定单词?

如何删除Excel中另一个单元格中一个单元格的列中的特定单词.

示例:if

  • A1 = *1603 Ad street New York*,
  • B1 = *New York*
  • 然后在C1我想= *1603 Ad street*

excel excel-2007 worksheet-function

2
推荐指数
1
解决办法
8万
查看次数

使用Oledb读取Excel文件 - 将excel文件的内容视为仅文本

我正在使用C#和OleDb从excel 2007文件中读取数据.

我正在使用的连接字符串是:

Provider=Microsoft.ACE.OLEDB.12.0;Data Source=c:\myFolder\myExcel2007file.xlsx;Extended Properties="Excel 12.0 Xml;HDR=YES;IMEX=1";
Run Code Online (Sandbox Code Playgroud)

以下是读取excel的代码:

private OleDbConnection con = null;
private OleDbCommand cmd = null;
private OleDbDataReader dr = null;
private OleDbDataAdapter adap = null;
private DataTable dt = null;
private DataSet ds = null;
private string query;
private string conStr;

public MainWindow()
{
    this.InitializeComponent();
    this.query = "SELECT * FROM [Sheet1$]";
    this.conStr = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\\Users\\301591\\Desktop\\Fame.xlsx;Extended Properties=\"Excel 12.0 Xml;HDR=YES;IMEX=1;TypeGuessRows=0;ImportMixedTypes=Text\"";
}

private void btnImport_Click(object sender, RoutedEventArgs e)
{
    this.ImportingDataSetWay();
}

private void ImportingDataSetWay()
{
    con = new OleDbConnection(conStr); …
Run Code Online (Sandbox Code Playgroud)

c# oledb wpf excel-2007

2
推荐指数
1
解决办法
2万
查看次数

将范围变量传递到Excel宏中的公式

我试图在宏公式中使用变量来避免选择单元格,但是我不断收到错误.

这是我试图做的简化:

    Dim myRange as Range
    Dim formulaCell as Range

    Set myRange = [a1:a10]
    formulaCell.Formula = "=sum(myRange)"
Run Code Online (Sandbox Code Playgroud)

但是我一直得到:

"application-defined or object defined error"
Run Code Online (Sandbox Code Playgroud)

我尝试过使用:

formulaCell.Formula = "=sum(" & myRange & ")"
Run Code Online (Sandbox Code Playgroud)

但后来我得到:

Type mismatch
Run Code Online (Sandbox Code Playgroud)

还尝试过:

formulaCell.Formula = "=sum(" & Range(myRange) & ")"
Run Code Online (Sandbox Code Playgroud)

无济于事

我确定答案是非常基本的,但无法弄清楚我做错了什么.任何和所有的帮助将不胜感激.

excel vba excel-2007 excel-vba

2
推荐指数
1
解决办法
1万
查看次数

Excel宏在Debug中工作,但不在完全运行

所以我有一个宏,旨在为工作表的打印区域中的每个分页符插入4个标题行.当我在调试模式中逐步运行它时,它会为每个分页插入正确的标题行,但是当它单独运行时,它似乎正在跳过部分.我已经添加了Sleeps和Debug.Prints,以便找出它出错的地方,但我仍然无法弄明白.

这是代码:

Sub InsertRowPageBreak()

    Dim WS As Worksheet
    Dim rng As Range
    Dim pb As Variant
    Dim Row As Integer
    Dim OffSet As Integer
    Dim InsertRow As Integer

    Set WS = ThisWorkbook.Worksheets(1)
    WS.Activate
    Rows("1:1").Select
    Selection.Delete Shift:=xlUp
    Dim i As Integer
    i = 1

    For Each pb In WS.HPageBreaks
        Debug.Print "Iteration: " & i
        i = i + 1

        Row = pb.Location.Row
        Range("A" & Row).Select
        Debug.Print "Page Break at Row: " & Row

        If (Range("A" & Row - 2).Value Like "*Date*") …
Run Code Online (Sandbox Code Playgroud)

excel vba excel-2007 excel-vba

2
推荐指数
1
解决办法
7873
查看次数

为什么notError()不能在excel VBA中使用vlookup语句

我正在使用excel 2007并创建了一个包含三个vlookup()语句的UDF.该函数应该返回所有三个vlookup语句的总和.在大多数情况下,只有两个vlookup()语句将返回一个有效值,第三个语句将导致NA,因为查找值不包含在查找范围内.

我试图捕获错误并使用以下命令返回零:

  1. Application.WorksheetFunction.iferror(vlookup(...),0)

  2. 使用If iserror(vlookup())然后的条件...

但我似乎无法获得任何一种工作方法.如果我注释掉我知道正在创建错误的vlookup,一切都按预期工作.

有谁知道为什么iserror(0和iserror()似乎没有工作或者可能是一种可行的替代方法.

更新:

这是三个vlookup函数:

product2 = Application.WorksheetFunction.IfError(Application.WorksheetFunction.VLookup(productA, lookuprng, offset, False), 0)

product3 = Application.WorksheetFunction.IfError(Application.WorksheetFunction.VLookup(productB, lookuprng, offset, False), 0)

product4 = Application.WorksheetFunction.IfError(Application.WorksheetFunction.VLookup(productC, lookuprng, offset, False), 0)
Run Code Online (Sandbox Code Playgroud)

excel vba excel-2007 excel-vba

2
推荐指数
1
解决办法
2万
查看次数

Excel:如果相关键在使用公式的值范围内,则对一系列单元格求和

如果关联值在用作过滤条件的值范围内,我试图返回一系列单元格的总和.例如,使用以下数据表:

  Keys      Values
   A        500
   B        300
   C        600
   D         20
   A        150
   C        600
Run Code Online (Sandbox Code Playgroud)

以及要汇总的以下键列表:

Sum Keys:
   A
   D
Run Code Online (Sandbox Code Playgroud)

我正在寻找一种公式化的方式来回归500 + 20 + 150 = 670.

我知道你可以使用多个SUMIF,但是键的数量会根据用户想要过滤的内容而改变,并且编写足够的SUMIF来覆盖最大的现实情况(如10ish)似乎过多,我觉得必须有一个更方便.

在我看来,公式看起来像这样:

=SUMIFS(Values, Keys, OR(Sum Keys), ...(optional other conditions))
Run Code Online (Sandbox Code Playgroud)

我意识到这是一个简单的VBA问题,但我试图避免这种情况,因为电子表格将由具有不同(或没有)VBA知识的人员进行审核.此外,向数据添加指示符列以显示密钥是否在Sum Keys范围内是不现实的,因为将有多个标签汇总数据,每个标签都有自己的过滤器Key

任何帮助都表示赞赏,但我意识到如果没有VBA,这可能是不可能的.如果需要更多信息,请告诉我.

谢谢!

编辑:谢谢巴里houdini的答案!根据可接受标准的多个范围,查看他的帖子中关于求和的一般解决方案的评论.

excel excel-2007 worksheet-function excel-formula

2
推荐指数
1
解决办法
5315
查看次数

从字符串的VBA树视图

我想使用excel vba获取树视图.我有很多String喜欢这个

      /folderOne/fileOne
      /folderTwo/fileThree
      /folderOne/fileTwo
      /folderThree/fileFour
      /folderTwo/subFolderTwo
      /folderThree/subFolderThree/fileFive
Run Code Online (Sandbox Code Playgroud)

我想用vba在excel表中制作树形图.我的要求是

     folderOne
         L fileOne
         L fileTwo
     folderTwo
         L fileThree
     folderThree
         L fileFour
         subFolderThree
               L fileFive
Run Code Online (Sandbox Code Playgroud)

那么我应该如何定义呢?请与我分享一些想法或链接.我对vba很新.

excel vba excel-2007 excel-vba

2
推荐指数
1
解决办法
8683
查看次数

如何使用mysql连接ms excel-2007.

如何将excel-2007与mysql连接起来.我在Windows 7,64位.使用excel-2007 32位和mysql 5.1版,32位.任何人都可以帮我如何在excel文件中导入我的mysql表数据.提前致谢.

mysql excel vba excel-2007 excel-vba export-to-excel

2
推荐指数
2
解决办法
1万
查看次数