[英]How do I make a Excel cell contents invisible
我有一个Excel文件(VSTO),它将与数据一起上传。 但是,我想使一个单元格不可见,因为它包含不应向用户显示的ID之一。
我使用Excel.Range.Value2属性设置值。 现在我想使其中的值不可见
我正在使用C#,如何完成以上任务。
这将使单元格内容不可见,直到您单击它们,然后您才能更改数据。 这里
Microsoft.Office.Interop.Excel.Range descriptionRange31 = xlApp.get_Range("A18,A25,B18,B25");
descriptionRange31.NumberFormat = ";;;";
我不确定如何使其不可见。 但是,您只需将值复制并保存到内存中的变量中,然后将其替换为string.Empty
。
声明插件应用程序对象中的变量,以使其在打开Excel时一直有效。
如果即使在关闭Excel应用程序时也要保留它,则可以在对其进行编码后将其写入磁盘或保存在Excel工作簿的属性中(该位置在工作簿的“属性”页面中可见)。
我已经在VSTO Excel应用程序上工作。 在我的项目中,我使用特殊ID来唯一标识每一列。
因此,我建议您可以执行以下2个操作以使其不可见,而不是开始编码。 转到ur visual studio,打开工作簿的设计模式。 在您想要的任何位置的列或行中输入您的ID(假设在C列和5,6行中输入)
1,您可以在excel的顶部和左侧看到水平/垂直条,我们使用它们来调整n行的列大小..以使其隐藏特定列的方式对其进行调整
如您所见,我将列调整为隐藏列“ C”,将行调整为隐藏第5和第6行。
2.现在打开excel(不是来自Visual stodio,不是来自Windows资源管理器),按Alt + T + P + P并使用垂直密码保护工作表,操作就完成了。
现在,用户无法对列或行进行任何更改,并且日期仍然不可见。
问候,
Sangram Nandkhile
我不确定您是否可以使单元格的内容“不可见”。 但是,您可以通过以下方法实现该目标大有帮助:
这种方法的安全性不是100%,因为Excel保护并不是很难破解的。 但是,模糊性(因为用户甚至看不到工作表选项卡)和保护VBA项目免受编辑的结合(因此,即使有人知道隐藏的工作表存在,编写取消隐藏的代码也不会那么容易)方法)和工作表结构的密码保护(这样就不容易取消隐藏受保护的列)应该阻止除了最坚决的偷窥者之外的所有人看到您隐藏的内容。
我没有使用VSTO,因此无法为您编写代码。 该方法虽然有效,但实现它的所有API挂钩都可能可用。
我不确定该答案是否与您的问题级别相符,但是如果我愿意进入您的问题描述中,则无法确定。 我只是将字体颜色设置为与背景相同,并锁定单元格以防止编辑(当然,您可以从代码中处理该单元格,同时写入/更改值),然后锁定excel工作表,但明确标记为已打开的单元格/区域除外。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.