小编see*_*oon的帖子

Excel中嵌套的INDIRECT函数 - 在一台计算机上工作但在另一台计算机上返回#REF

这非常复杂,但我会尽可能清楚地解释它.如果没有意义,请告诉我.

我有两个工作簿 - 输入和输出.由于系统的工作方式,它们必须是分开的,即"提名者"将所有输入都输入到简单的输入工作簿中,输出工作簿将其格式化为可供使用.为了使其工作,输出工作簿必须引用输入工作簿来检索值.

我一直在测试这两个工作簿是开放的.

为此,我使用了嵌套INDIRECT函数; 第一个创建文件路径,调用命名范围,第二个告诉Excel解释该文件路径并检索该值.

我首先使用INDIRECT构建文件路径:

=INDIRECT("input_sheet_location")&"Wk 25 2012'!$B$11"
Run Code Online (Sandbox Code Playgroud)

这返回类似于:

\\My Documents\Subfolder\[input_sheet.xlsx]Wk 25 2012'!$B$11
Run Code Online (Sandbox Code Playgroud)

然后将其嵌套在另一个中以使Excel读取该路径:

=INDIRECT("'"&INDIRECT("input_sheet_location")&"Wk 25 2012'!$B$12")
Run Code Online (Sandbox Code Playgroud)

这成功地从input_sheet_location返回单元格B12的值 - 一个命名范围,它是一个文件目录.为了论证,我们可以说它返回:

Captain America's underpants
Run Code Online (Sandbox Code Playgroud)

所以上面的效果非常好.为了我.但是,在另一个用户的计算机上,它不起作用.我试图深入研究,并制定了以下内容:

  1. 文件之间的连接也存在于他们的系统中 - 探索数据>编辑链接显示他们具有与我相同的工作连接.
  2. 生成的文件路径是相同的; 我构建了一个宏来向用户显示它,并且在3台机器上,它每次都是相同的.
  3. 最关键的(也是令人困惑的)非嵌套INDIRECT公式确实有效.它只是嵌套的公式,只适用于我的计算机.在每个其他用户的计算机上,它返回#REF错误.

有谁知道为什么会出现这种情况?我很茫然.

感谢阅读那篇高谈阔论.

excel excel-formula

7
推荐指数
1
解决办法
4905
查看次数

使用VBA转换为句子案例

我一直在谷歌上搜索一页,在这里寻找这个看似简单的请求的解决方案,但无济于事.有没有人知道使用将字符串转换为句子的可靠方法?

理想情况下,我会将其构建为子而不是函数,因此从GUI调用更容易.

作为参考,我想要:

这里是一个长长的,高级的句子.请立刻向我致敬.

成为:

这是一个冗长,丑陋的大写句子.请立即修改我.

转换为标题案例我发现非常简单(因为有一个内置函数)但转换到句子案例确实非常困难.

我尝试了以下一些方法,但每次都会出现错误:

我怎样才能让它发挥作用?

excel vba excel-vba

6
推荐指数
1
解决办法
6164
查看次数

如何使用VBA列出字符串中工作簿中的所有工作表?

如何使用VBA获取活动工作簿中所有工作表的名称(或者最多三个)作为字符串返回?对于上下文,我将在保存时使用字符串命名工作簿.我已经想出如何使用输入对话框等为文件创建savename,所以这只是让VBA返回类似"[Worksheet 1 name]和[Worksheet 2 name]"之类的东西.

非常感谢!

vba worksheet

4
推荐指数
1
解决办法
5万
查看次数

在两个相同的VBA函数中,突然返回#NAME错误

我刚刚经历了一个宏的突然失败.它调用以下函数,该函数使用选定的可选分隔符连接一系列单元格:

Public Function MAKELIST(ByVal cellRange As Range, Optional ByVal delimiter As String)
 'Function to join a range of cells together with an optional
 Dim c As Range
 Dim newText As String
 Dim Count As Integer
 Count = 0
 newText = ""
 For Each c In cellRange
  Count = Count + 1
  newText = newText & c.Value
  If Count < cellRange.Count Then
   newText = newText & delimiter
  End If
 Next
 MAKELIST = newText
End Function
Run Code Online (Sandbox Code Playgroud)

它只是简单地将手动输入的单元格数据连接在一起 - 任何值似乎都会破坏它.似乎问题在于如何引用/调用函数(抱歉,不是命名法)而不是函数本身.

完美.我在文件夹之间移动文件,它突然停止工作, …

excel vba excel-vba

3
推荐指数
1
解决办法
1797
查看次数

如何在Excel VBA中获取当前网络的名称?

说我连接到test.server.com我的互联网访问.有没有办法让使用VBA返回该字符串?

根据您的要求进行扩展(对不起,网络是我所知甚少的):

以下是Windows 7企业版:如果您要导航到"控制面板"中的"网络和共享中心",这将是"域网络"的名称.或者,单击任务栏中的网络图标将显示此网络名称下方的"Internet访问".

excel vba excel-vba

0
推荐指数
1
解决办法
6013
查看次数

标签 统计

excel ×4

vba ×4

excel-vba ×3

excel-formula ×1

worksheet ×1