我正在使用excel 2010中的“相机”功能。
我的目标是让一个单元格具有我可以手动输入的日期,在其下方,公式将获得更新的值,该值表示另一个excel文件中的工作表名称,并向我显示更新的屏幕截图。 / p>
例如:
单元格A1
具有:12.25
就在它下面,我有:
='C:\My_Excel_Files\[excelDataFile.xlsx]12.25'!$A$1:$D$20
因此,如果我要将单元格A1
的值更改为12.26
,则公式会自动选择该值。
我尝试使用这样的间接函数:
='C:\My_Excel_Files\[excelDataFile.xlsx]INDIRECT(A1)'!$A$1:$D$20
但它不起作用。
答案 0 :(得分:1)
如上所述on this forum和this website,您可以使用免费的MOREFUNC.XLL加载项。它提供了INDIRECT.EXT函数,它将完全按照您的要求执行。你需要的公式将是:
=INDIRECT.EXT("'C:\My_Excel_Files\[excelDataFile.xlsx]" & A1 & "'!$A$1:$D$20")
在字符串中间区分A1的值。
注意:这些网站中的链接似乎并不总是有效,您可以谷歌“更多下载”或尝试其中一个链接:
http://download.cnet.com/Morefunc/3000-2077_4-10423159.html
http://www.freewarefiles.com/Morefunc_program_14922.html
答案 1 :(得分:0)
稍微不同的方法可能适合您。我们假设:
MyCameraImage
SO09.xlsm
$F$1:$I$5
,并且在所有相关的工作表上都相同A1
使用摄像头图像
将Worksheet_Change
事件添加到工作表中
Private Sub Worksheet_Change(ByVal Target As Range)
Dim wbOther As Workbook
Dim wsOther As Worksheet
If Not Intersect(Target, Me.[A1]) Is Nothing Then
Set wbOther = Workbooks("SO09.xlsm")
On Error GoTo EH
Set wsOther = wbOther.Worksheets(CStr([A1]))
Me.Shapes("MyCameraImage").DrawingObject.Formula = "='[" & wbOther.Name & "]" & [A1] & "'!$F$1:$I$5"
EH:
End If
End Sub
这会将相机图像参考更新为单元格A1
中指定的工作表(如果存在)
请注意,必须打开“其他”工作簿才能使其工作并使图像更新
答案 2 :(得分:0)
=Excel.Sheet.12|'C:\Users\Me\Desktop\s2.xlsx'!'!Sheet1!R3C1:R4C2'
)