vb调用excel某一列数据,然后给函数变量赋值,得出结果

张老师,我想用vb调用excel某一列数据,然后给函数变量赋值,得出结果.求老师写个代码,谢谢
就比如y=a+b+c这个函数(我随机给的,实际函数比较复杂,只想看看各位的思路),依次读取第二行3个数据给啊a,b,c赋值,得出y值,然后将y值输出到excel表某一列。
复制粘贴党狗带,我差不多把相关代码都搜了一遍。。。

'引用:
'添加对该对象的引用 工程菜单-->引用,找到 Microsoft Scripting Runtime
'引用microsoft Excel 14.0 object library
'
Dim elApp As Excel.Application
Dim elBooks As Excel.Workbook
Dim ekSheet As Excel.Worksheet
Dim TblMap_Card '创建一个变量

Private Sub Command1_Click()
Dim i As Integer
openEl
Set dic = CreateObject("Scripting.Dictionary")
'MsgBox ekSheet.Cells(Rows.Count, 1).End(3).Row
For i = 2 To ekSheet.Cells(Rows.Count, 1).End(3).Row
If dic.Exists(ekSheet.Cells(i, 2).Value) Then
dic(ekSheet.Cells(i, 1).Value) = dic(ekSheet.Cells(i, 1).Value) + ekSheet.Cells(i, 2).Value
Else
dic(ekSheet.Cells(i, 1).Value) = ekSheet.Cells(i, 2).Value
End If
Next i

ekSheet.Range("H:J").Clear

'ekSheet.Cells(1, 9).Resize(1, 2) = Array("商品", "售量")
ekSheet.Cells(2, 9).Resize(dic.Count, 1) = Application.Transpose(dic.Keys)
ekSheet.Cells(2, 10).Resize(dic.Count, 1) = Application.Transpose(dic.Items)

End Sub

Private Sub openEl()
Dim myPath As String
myPath = "\week.xlsx"
Set elApp = CreateObject("Excel.Application")
Set elBooks = elApp.Workbooks.Open(App.Path & myPath)
Set ekSheet = elBooks.Worksheets("Sheet1")
'Set ekSheet = elBooks.Worksheets(1)
elApp.Visible = True
End Sub追问

求不复制粘贴

温馨提示:内容为网友见解,仅供参考
第1个回答  2016-05-28
你的问题还是不够明白,图中三列数是 y=ax^2+bx+c的系数吗?如果是,那就是有多个一元二次方程。x取任何值,是随机取一个数还是一组数?结果y放在哪里?没有更进一步的信息,实在是无从下手。追问

我把问题修改了下,就想看看老师的思路,非常感谢
就比如y=a+b+c这个函数(我随机给的,实际函数比较复杂,只想看看各位的思路),依次读取第二行3个数据给啊a,b,c赋值,得出y值,然后将y值输出到excel表某一列。

第2个回答  2017-12-27
假如Y值在D列

在D1里输入=A1+B1+C1来自:求助得到的回答
第2个回答  2017-12-27
你可以用数据插值的。也可以用拟合的。追问

能给个代码吗

第3个回答  2016-05-29
Sub 赋值()
Dim i As Long
Dim a, b, c
For i = 2 To [A65536].End(3).Row
a = Cells(i, 1).Value
b = Cells(i, 2).Value
c = Cells(i, 3).Value
Cells(i, 4) = a + b + c
Next
End Sub

vb调用excel某一列数据,然后给函数变量赋值,得出结果
Dim ekSheet As Excel.Worksheet Dim TblMap_Card '创建一个变量 Private Sub Command1_Click()Dim i As Integer openEl Set dic = CreateObject("Scripting.Dictionary")'MsgBox ekSheet.Cells(Rows.Count, 1).End(3).Row For i = 2 To ekSheet.Cells(Rows.Count, 1).End(3).Row If dic...

如何用VB6.0实现用对话框选择excel文件,并调用其中数据存成数组后进行...
Dim a() As String, tem As String Dim i As Integer '运行前请"工程-引用" "Microsoft Excel 12.0 Object Library" 打钩 Dim xlApp As Excel.Application Dim xlBook As Excel.Workbook Dim xlSheet As Excel.Worksheet Dim j As Integer Private Sub Command1_Click()'xlApp.NewWorkbook.Ad...

在EXCEL中一列输入计算式,在另一列中自动显示结果(可以用VB)
1.选中该单元格---按下CTRL+F3---输入要定义的名称比如 AAA ---引用位置处输入比如是: =evaluate(A1)在要出计算值的单元格输入公式 =AAA。2.假设是要整列如此,如下图。3.B1中输入 =AAA 下拉就能实现了。

如何在vb中给excel对象赋值?
步骤一、首先打开一个EXCEL程序。步骤二、然后打开VBA编程的界面。步骤三、定义一个函数。步骤四、然后使用“rem+空格+注释内容”。步骤五、用英文字符的上单引号“注释内容”。步骤六、然后“rem+空格+注释内容”。步骤七、最后对于幅值对象进行的赋值。

vb如何把excel一列的值赋给数组
ReDim cellxd(1 To 200)For i = 1 To 200 cellxd(i) = xlSheet.Cells(i, 1)Next xlBook.Close (True)xlApp.Quit Set xlBook = Nothing Set xlBook = Nothing Set xlApp = Nothing '释放xlApp对象 MsgBox "已经把第1列的值赋给数组!", vbInformation, "提示"Unload Me End Sub ...

VB中如何调用EXCEL中的数据然后在VB中计算在VB中输出结果,能否提供一段...
ExcelIsRuning = True End If xlsAPP.DisplayAlerts = False '取消保存提示 End If Set BookPay = xlsAPP.Workbooks.Open(xlsFile) '打开文件 '提取工作表名称 cboSheet.Clear For nRow = 1 To BookPay.Sheets.Count cboSheet.AddItem BookPay.Sheets(nRow).Name Next cboSheet.ListIndex = 0 ...

如何用vb提取excel表格中的数据如何用vb提取excel表格中的数据和...
用vb提取excel表格中的数据方法:1、在汇总表中的A列,将多个工作表的表名依次排列。2、在B1单元格输入以下公式,然后向右向下填充公式=OFFSET(INDIRECT($A1&"!A1"),,COLUMN(A1)-1)&""公式表示:以A1单元格的内容作为表名引用,通过OFFSET函数将表名引用的A1单元格作为基准单元格,每向右移动一列...

如何用VB读取某个特定位置的EXCEL文件中的某个工作簿中的某行某列的内...
Private Sub CommandButton1_Click()Workbooks.Open Filename:="E:\\1.xlsx" '打开目标文件Me.TextBox1.Value = ActiveWorkbook.Sheets(2).Range("A3") '给文本框1赋值ActiveWorkbook.Close No '关闭目标文件End Sub根据你的要求,供参考!

如何用VB 来读取EXCEL表中的数据,并用循环语句读出表中的一列数据
Private Sub Form_Load()Dim oexcel, oworkbooks, newbook, newsheet, s As String Set oexcel = CreateObject("Excel.application")Set oworkbooks = oexcel.workbooks Set newbook = oworkbooks.open("c:\\Allsales.xls")Set newsheet = newbook.worksheets(1)s = newsheet.cells(1, 1)MsgB...

vb 与 excel 数据交互
Set xlApp = CreateObject("Excel.Application")Set xlBook = xlApp.Workbooks.Open("C:\\1.xls")Set xlSheet = xlBook.Worksheets(1)'引用第1张工作表 Debug.Print xlSheet.Range("A1")'在立即窗口中显示第1张工作表中A1的内容,如果你想赋值给某个变量就在这里赋值,=xlSheet.Range("A1")...

相似回答