Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ionic-framework/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Vba Excel-是否可以将字符显示为“Excel”*&引用;在一个范围内?_Vba_Excel - Fatal编程技术网

Vba Excel-是否可以将字符显示为“Excel”*&引用;在一个范围内?

Vba Excel-是否可以将字符显示为“Excel”*&引用;在一个范围内?,vba,excel,Vba,Excel,有人知道是否有可能使输入Excel范围的文本显示为“*******”?我希望用户能够在登录的范围内输入密码(无用户表单),但我希望在用户键入密码时,字符为星号(*),以便无法看到 我将使用Userform作为最后的手段,但我想先尝试在没有Userform的情况下实现这一点 有人能帮忙吗 谢谢大家! 不使用userform执行此操作并不理想,因为每次工作表上的内容发生更改时,都会运行此代码。strPassword被标注为一个全局变量,并且必须在代码的顶部设置尺寸 Dim strPassword A

有人知道是否有可能使输入Excel范围的文本显示为“*******”?我希望用户能够在登录的范围内输入密码(无用户表单),但我希望在用户键入密码时,字符为星号(*),以便无法看到

我将使用Userform作为最后的手段,但我想先尝试在没有Userform的情况下实现这一点

有人能帮忙吗


谢谢大家!

不使用userform执行此操作并不理想,因为每次工作表上的内容发生更改时,都会运行此代码。strPassword被标注为一个全局变量,并且必须在代码的顶部设置尺寸

Dim strPassword As String

Private Sub Worksheet_Change(ByVal Target As Range)
    If Sheet1.Cells(1, 1).Value <> "********" Then
        strPassword = Sheet1.Cells(1, 1).Value
        Sheet1.Cells(1, 1).Value = "********"
    End If
    MsgBox strPassword
End Sub
Dim strPassword作为字符串
私有子工作表_更改(ByVal目标作为范围)
如果Sheet1.单元格(1,1).值为“*******”,则
strPassword=Sheet1.单元格(1,1).值
Sheet1.单元格(1,1).Value=“***********”
如果结束
MsgBox strPassword
端接头

如果工作表上有空间,请将此代码添加到按钮(即,
Button1\u单击
event)读取密码并替换单元格值将阻止代码在每次更改时运行。

另一种可能是使用工作表中的文本框ActiveX控件,并将
PasswordChar
属性设置为,例如
*
。然后,用户在文本框中输入的文本将显示为
*
。文本框可以格式化,使其大小与包含单元格的大小相同,并且在包含单元格大小更改等内容时,文本框的大小也会调整。可以使用
链接单元格
,以便从该单元格读取密码值


您可以使用此自定义单元格格式
**
但密码仍将在公式栏中可见,也只是一条注释-如果这将是一个安全文档,请注意,如果您决心进入其中,Excel的锁定/保护基本上是一个笑话。此外,人们还可以通过其他方式获得数据。如果这是一个测试/没有什么超敏感的,那么你可能很好…只是想提一下。@BruceWayne说得好,但幸运的是,范围内不会包含任何超敏感的内容。@TimWilliams-doing
Application.DisplayFormulaBar=False
会避免公式栏问题吗?噢,您是否也可以添加
Application.DisplayFormulaBar=False
?然后,当用户在单元格中键入时,公式栏将不会显示字符。谢谢你的建议,蒂姆!我喜欢Tim William上面的评论,因为它不需要任何代码来运行-我对宏很好,我宁愿选择更简单的解决方案。不过,谢谢!好建议!谢谢,迪!我将实施这个建议。顺便问一下,您能否详细说明如何使文本框的大小随包含单元格的变化而变化?当我右键单击文本框(在设计器模式下)并选择“格式控制”并转到“属性”选项卡时,我选中了“移动并调整单元格大小”。当我调整包含单元格的大小时,该属性不会导致文本框自动调整大小。你能详细说明一下吗?“用细胞移动和调整大小”,是的,这也是我的想法。如果这不起作用,那么作为解决办法:您能否锁定图纸的结构,以便用户不能更改行的宽度/高度?或者通过VBA句柄
工作表\u selection change
事件,检查
目标
是否与密码单元格相交,并确保文本框大小与单元格大小一致?