所以我目前正在使用Visual Studio创建一个应用程序,该应用程序将信息从excel工作表中取出,然后对数据进行一些计算,然后再推回excel。
我设法做到了这一点,但是我苦苦挣扎的事情是使用“参数”表。我希望能够在工作簿的一个工作表的单元格中输入公式,然后将该公式粘贴到另一工作表中,但要对其进行更新,例如随着单元格下降,公式会像在excel中一样发生变化。我通过对公式进行硬编码然后使用变量作为行号来进行手动处理,但是我希望能够仅在excel工作表中更改公式,然后在代码运行时将其应用于其余部分。
目前,我尝试将单元格值/文本保存到变量中,然后使新单元格等于该变量,但是,这随后将相同的公式应用于整个列(所有必需的行)。
我当前要执行的操作是将变量粘贴到第一行,然后将该单元格复制并粘贴到最后一个单元格,
我尝试使变量成为公式,但是它在等于变量之前先对公式求值,因此将所有新单元格设置为公式答案,因此我将单元格更改为文本,这就意味着公式确实出现在新单元格中,但是所有单元格的公式相同。
复制代码如下所示
bjExcel.cells(rown, colval) = param1
objExcel.cells(rown, colval).copy
这很好
但是当我使用下面的内容时,粘贴将无效
Do Until rown = 10
objExcel.cells(rown, colval).copy
rown = rown + 1
objExcel.cells(rown, colval).paste
无法识别粘贴错误:
System.MissingMemberException:类型上的“公共成员”粘贴” 找不到“ ApplicationClass”。
答案 0 :(得分:0)
您是否需要改用PasteSpecial?
https://docs.microsoft.com/en-us/office/vba/api/excel.range.pastespecial
取决于您用来与excel互操作的内容。
答案 1 :(得分:0)
shWorkSheet.Range(“ C7:C7”)。Copy() shWorkSheet.Range(“ V7:V7”)。PasteSpecial(Excel.XlPasteType.xlPasteAll)