Tag: excel

Excel – 在A1中input一个数字值,它指的是C +数值的值

我正在寻求一个Excel问题的帮助,我试图弄清楚: 假设C54的值为123, C55的值为321 如果我让A1 = 54然后B1 (目标单元格)成为单元格C54的值(“C”和val( A1 )= C54 = 123 如果A1 = 55那么B1成为C55 = 321的值 因此,在A1中input的数值是指列C中的(数值)行: 这是可能的,通过一个公式,或通过VBA

将VBA数组转换为VB.NET

我一直在尝试创build一个VB.NET VTSO插件,其中excel列根据列标题值重新排列。 我发现(在线)VBA代码完全相同,但Visual Basic不能识别“Dim v = …”行。 有谁知道我可以如何补救这一点。 Dim v As Object, x As Object, findfield As Object Dim oCell As Excel.Range Dim iNum As Long Dim v = Array("First Name", "Middle Name", "Last Name", "Date of Birth", "Phone Number", "Address", "City", "State", "Postal (ZIP) Code", "Country") For x = LBound(v) To UBound(v) findfield = […]

有关IF语句的Excel查询

我想这应该是一个相当快的问题,希望! 我想在下面的公式中添加一行,在IF C6 = 0,0的行之后,如果B6等于W,结果应该是9.95: =IF(C6=0,0, MAX(SUM(IF(F6<=0,0,39), IF(F6>30,(C6*0.08), IF(F6>20,(C6*0.07), IF(F6>10,(C6*0.06), IF(F6>5,(C6*0.05), IF(F6>2,(C6*0.04), IF(F6>1,(C6*0.03), IF(F6>=0.25,(C6*0.02), IF(F6>=0,(0.03*C6*F6),0))))))))),43)) 基本上,首先应该查找的是,如果C6为0,结果应该是0 – 但是如果C6> 0,那么检查B6的字母“W”,如果是真的,则显示9.95,否则与公式的其余部分一起去。

运行macros后保存并closures工作簿而不提示?

我想通过VBScript保存并closures在其中执行macros(模块:modBex,Sub:Test)的Excel文件。 下面的代码工作正常,除了Excel文件( macro_file.xlsm )没有得到保存。 这是我的代码: Option Explicit Dim xlApp, xlBook Set xlApp = CreateObject("Excel.Application") Set xlBook = xlApp.Workbooks.Open("C:\macro_file.xlsm", 0, True) xlApp.Run "modBex.Test" xlApp.DisplayAlerts = False xlBook.Save xlApp.Quit Set xlApp = Nothing Set xlAddin = Nothing Set xlBook = Nothing WScript.Quit

对象variables或块variables未设置 – 错误

我正在运行一个简单的VBA代码如下: Sub TransferData() 'transfer stuff from workbook 1 to workbook 2 Dim strPath1 As String Dim strPath2 As String Dim wbkWorkbook1 As Workbook Dim wbkWorkbook2 As Workbook 'define paths and filenames strPath1 = "C:\blp\data\grid1.xls" strPath2 = "Z:\24AM\Risk Managemen\Risk Management Processes.xlsm" 'copy the values across wbkWorkbook2.Worksheets("FXDUMP").Range("A1:Z2000").Value = wbkWorkbook1.Worksheets("Book1").Range("A1:Z2000").Value 'close the two workbooks wbkWorkbook1.Close (False) wbkWorkbook2.Close (True) […]

汇总表中的列值

我有button,可以添加行,撤消最后添加的行,并删除表中的所有行。 最后,我有一个button,应该在表格的最后添加一行,将上面的列的内容相加。 Private Sub cmbSummarizeColumns_Click() Dim the_sheet As Worksheet Dim table_list_object As ListObject Dim table_object_row As ListRow Set the_sheet = Sheets("Ark1") Set table_list_object = the_sheet.ListObjects(1) Set table_object_row = table_list_object.ListRows.Add table_object_row.Range(1, 1).Value = sumcolumn_1 table_object_row.Range(1, 2).Value = sumcolumn_2 table_object_row.Range(1, 3).Value = sumcolumn_3 End Sub 我不知道如何find1,2和3列的总和,因为我是VBA的新手。 是的,我在这张桌子上有标题。 任何帮助,将不胜感激。

Excel对象库文件在哪里?

我正在寻找Excel Object Library文件将其导入到LabVIEW中。 我已经安装了MS Office 2013,可以findMSACC.olb,MSOUTL.olb,MSPPT.olb和MSWORD.olb,但无法确定要导入哪个文件(.olb或.dll)以便在LabVIEW中处理Excel文件。

我该如何处理“没有构造函数定义”和“types不能embedded”例外?

添加Excel 12参考(添加了Microsoft.Office.Interop.Excel和VBIDE DLLs)后,我从这里复制并粘贴代码,即: 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 Excel = Microsoft.Office.Interop.Excel; namespace WindowsFormsAppExcelTest { public partial class Form1 : Form { public Form1() { InitializeComponent(); } private void buttonCreateExcelFile_Click(object sender, EventArgs e) { Excel.Application xlApp; Excel.Workbook xlWorkBook; Excel.Worksheet xlWorkSheet; object misValue […]

创build一个运行SQL查询的macros,并将数据粘贴到Excel中

所以这里是我的困境我试图创build一个macros,运行一个查询位于单元格(表(“SQL”)。范围(“G1”)),并将该查询中的数据粘贴到表(“数据 “)。范围(” B1" )。 我想到了下面的代码,但我不断收到一个编译错误:用户定义的types没有定义。 请任何有关我在做什么错误的见解将不胜感激。 Sub ConnectSqlServer() Dim conn As ADODB.Connection Dim rs As ADODB.Recordset Dim sConnString As String Dim StrSQL As Variant Application.ScreenUpdating = False Application.Cursor = xlWait Set cnPubs = New ADODB.Connection Set rsPubs = New ADODB.Recordset StrSQL = " SET NOCOUNT ON " ' Create the connection string. sConnString = "Provider=SQLOLEDB; […]

将最后一个logging复制并粘贴到第一个空白行的VBA

我是VBA新手,所以我的查询可能(希望)是一个简单的! 我有一个大型的客户端详细信息数据库,并且希望为工作表编写一个macros,它将查找最后一个非空行,复制行,并将“格式”和“validation”粘贴到第一个空行。 我希望macros能够自动运行(所以即使在添加更多的客户端时,第一个空白行也将始终具有与上述行相同的格式)。 到目前为止,我已经写了这个,当我按下Run Sub它是第一次,但是如果我在最后一个空行添加细节,我得到一个错误。 当我尝试debugging时,突出显示“复制最后一行: Private Sub Worksheet_Change(ByVal Target As Range) 'Copy last row Range("C" & Rows.Count).End(x1Up).Rows.Select Selection.Copy 'Paste format and validation into next blank row Range("C" & Rows.Count).End(x1Up).Offset(1).Rows.Select Selection.PasteSpecial Paste:=xlPasteFormats, Operation:=xlNone, _ SkipBlanks:=False, Transpose:=False Selection.PasteSpecial Paste:=xlPasteValidation, Operation:=xlNone, _ SkipBlanks:=False, Transpose:=False Application.CutCopyMode = False End Sub 另外,我正在运行基于列“C”的代码,因为这是一个必填字段,所以对于任何logging都不会空白。