Tag: visual studio

Microsoft Excel C API和Visual Studio

我试图找出一个相当复杂的问题的最佳解决scheme。 我需要能够从数据库发布数据作为网页仪表板。 除了通过名为Xtraction的程序,我不能直接查询数据库。 但是,Xtraction能够将查询的数据导出到MS Excel。 我想知道任何人都可以告诉我Excel的C API是否允许我在Excel中获取数据,并使用Excel的本地图表function来生成我需要在网页上发布的丰富图表。 现在,我知道探索这个唯一的方法是通过获得MS Visual Studio 2010,如果不能为我做到这一点,我不想把钱拿出来。 任何意见表示赞赏。 问候。

如何使用C#在Excel中select现有的图表

我想使用C#在Excel中select现有的图表。 我有一个图表对象在我的Excel文件,我想阅读它也编辑它。 我只知道通过做这样的事情来添加新的图表 ChartObjects ChartObjs = null; ChartObject ChartObj = null; ChartObj = ChartObjs.Add(0, 10, 250, 170); 我正在使用VS 2005和C#

检查excel 2010 bitness

是否有可能使用在kernel32.dll中定义的getBinaryType()函数来获取office 2010 bitness。 [DllImport("kernel32.dll")] static extern bool GetBinaryType(string lpApplicationName, out uint lpBinaryType); uint type; GetBinaryType("applicationName",out type); 我曾尝试使用应用程序类如下所述,但有时它会失败。 public static ExcelVersion GetExcelVersion(object applicationClass) { if (applicationClass == null) throw new ArgumentNullException("applicationClass"); PropertyInfo property = applicationClass.GetType().GetProperty("HinstancePtr", BindingFlags.Instance | BindingFlags.Public); if (property == null) return ExcelVersion.Excel; return (System.Runtime.InteropServices.Marshal.SizeOf(property.GetValue(applicationClass, null)) == 8) ? ExcelVersion.Excel2010_64 : ExcelVersion.Excel2010_32; } 有没有其他办法来检测Office 2010的位数?

在文档级别自定义中引用Windows窗体中的Excel表格

我想我会尝试学习VB.net,并从一些VSTO(VS2012)开始。 我正在尝试使用单独的Windows窗体在其中进行Excel文档自定义(.show on load)。 我可以在加载文档时打开表单。 我发现了很多如何在MSDN上的文档中放置Windows窗体控件的例子(并想出如何做到这一点),但是我在从Windows窗体引用部分Excel文档时遇到了问题。 所以例如在窗体上的主要控制我试图把这个子添加到一个button: Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click Try Dim baba As Sheet1 baba.Cells(1, 2).Value = "Llaslmasd" Catch ex As Exception MsgBox(ex.Message) End Try End Sub 我也试过: Dim baba As New Sheet1 和 Dim baba As WorkSheet baba = Sheet1 如果参考表不是共享成员,或者如果我将它分享,那么引用该表的正确方法是什么?我该怎么做? 如果我以编程方式尝试插入来自其他(非合并的工作簿,因此更改图表索引? 对不起,如果我的英文不对,或者我的问题的格式不好,我仍然会通过例子。

通过VB运行Excelmacros,返回运行时错误'429'

我可以在excel表格中手动运行我的macros而不出错,但是当我通过VB运行代码时,出现与Outlook 15.0引用相关的“429”ActiveX错误。 我有在VB和Excel文件中引用的outlook 15.0对象库。 不知道从这里做什么。 这里是VB中的代码: Imports System Imports System.Threading Imports System.IO Imports Microsoft.Office.Core Imports System.Runtime.InteropServices Imports Microsoft.Office.Interop Module module1 Sub Main() Dim bloomberg As String Dim xlApp Dim wkbk As String Dim macro As Strign Dim oWorkBook Dim boolexists As Boolean oWorkBook = Nothing bloomberg = "C:\blp\API\Office Tools\BloombergUI.xla" xlApp = CreateObject("Excel.Application") 'ReloadXLAddins(xlApp) 'I want […]

如何添加多个表从Excel XLS文件转换为XML(C#)

我从这里下载了这个项目 – >> http://code.msdn.microsoft.com/office/How-to-convert-excel-file-7a9bb404 这个工作正常,它是一个伟大的评论代码,即使是像我这样的初学者也能理解,但是它只适用于每张表一个表。 一旦我在工作表中添加第二个表格,它就会在我的电子表格中的某一列中引发错误:错误发生!错误消息是:找不到第4列。 基本上,我的电子表格中有这种types的表格: 所以我希望我的程序能将这两个表格导出到一个.XML文件中(只读两个表格)。 而这两个表应该分成两个XML孩子:上面的一个应该是Order-Header ,而下面的一个是Line-Items ,如下所示: <ROOT> <Order-Header> ….. </Order-Header> <Line-Items> ….. </Line-Items> </ROOT> 这是这个程序的代码: using System; using System.Collections.Generic; using System.Data; using System.IO; using System.Linq; using System.Text.RegularExpressions; using DocumentFormat.OpenXml.Packaging; using DocumentFormat.OpenXml.Spreadsheet; namespace CSOpenXmlExcelToXml { public class ConvertExcelToXml { /// <summary> /// Read Data from selected excel file into DataTable /// […]

在使用C#,Excel和Selenium时知道如何/何时处理内存pipe理?

我最近一直在使用C#和Selenium来创build循环,将数据导入到网站的search参数中,这样可以将结果粘贴到Excel表格中(全部在Visual Studio中)。 我注意到,随着我越来越多的search(如n ++;),程序的速度稳步下降,甚至对于我在工作表顶部的进度条的帧速下降,这导致我相信程序的速度越来越慢。 在程序运行的每个小时后,我也一直在收集结果,似乎我的程序完成的search次数随着时间的推移而下降。 这是由于垃圾收集器没有按照我的预期工作,由于缺乏知识? 我应该修改内存pipe理吗? 这个循环是否足以担心内存pipe理? 我知道垃圾收集器应该为我分配空间,我也假设它也删除不再使用的对象。 我对内存pipe理很less有任何经验,所以我只是在寻求澄清。 如果这是我应该处理的事情,是否有人能指出我正确的方向,并帮助我学习如何做? 这里是我的脚本供参考(我在Excel中通过约16,000行来完成这个特定的脚本)。 编辑:额外的问题:这是否与我正在使用像一个Try-Catch一样的内存重调用的事实? public partial class Sheet1 { private void Sheet1_Startup(object sender, System.EventArgs e) { } private void Sheet1_Shutdown(object sender, System.EventArgs e) { } #region VSTO Designer generated code /// <summary> /// Required method for Designer support – do not modify /// the contents of […]

显示Excel使用C#添加版本

我正试图在Excel菜单栏上显示当前项目版本的Excel添加。 这是我的代码片段,它位于 private void TPFCRibbon_Load(object sender, RibbonUIEventArgs e) { loginGroup.Label = "v" + Assembly.GetExecutingAssembly().GetName().Version.ToString(); } 这是项目版本: 结果是: 正如你所看到的,它总是显示版本1.0,我做错了什么?

以编程方式移动并签入本地文件到Sharepoint C#

下面是我正在使用代码将本地文件从D:移动到共享点库的代码。 我能够移动文件,但它不检查文件到共享点。 我不确定如何检查此文件。有没有人有类似的问题与SharePoint的? 谢谢。 这里是我的代码,我没有使用确切的目标和源URL,所以忽略。 它编译和运行良好,它可以用来移动一个文件,让我们说D:到我的文档,它只是不检查文件到共享点。 此外,我正在检查一个Excel表格,根据每天更新的数据进行一些计算。 计算是通过一个macros来完成的。 是否有可能写一个macros自动上传到共享点库和检查? 如果是的话,我可以添加这个macros已经到位,而不是使用C#。 谢谢。 using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using System.IO; using Microsoft.SharePoint.WorkflowServices; using Microsoft.SharePoint.Client; using Microsoft.SharePoint; using System.Net; namespace defectUpload { class Program { static void Main(string[] args) { string fileName = "WS2016.xlsm"; string sourcePath = @ source path ""; string targetPath […]

需要从string中的数字中分离出字母,通过vb.net

我希望我的代码能够在string的任何位置find字母旁边的数字,并在两者之间插入一个空格。 我有几个地址没有空格,我需要通过从字母中分离出数字来插入空格。 例如: 123MainSt.Box123 应该是123主圣盒123 要么 123Parkway134 应该是:123 Parkway 134 这里是我从我的代码开始,但它是在开始梳理两个数字…. Dim Digits() As String = Regex.Split(Address, "[^0-9]+") 'MsgBox(Digits.Count) If Digits.Length > 2 Then ' For Each item As String In Digits Dim Letters As String = Regex.Replace(Address, "(?:[0-9]+\.?[0-9]*|\.[0-9]+)", "") rCell.Value = Digits(0) & Letters & Digits(1) End If If Digits.Length < 3 Then If […]