在Execl中有什么类似PSPP的值标签吗?

时间:2015-10-17 18:12:54

标签: excel

我想知道Excel 2013是否有代表数字输入的东西作为预设标签。

类似于单元格A1中的输入1,但显示为"计算机科学"在同一单元格中,输入2显示为"计算机工程" ,就像这样。

很抱歉,如果我的问题不清楚,我不擅长英语,也许这就是为什么我无法在谷歌上找到我的解决方案。 熟悉pspp的人可能更容易理解我在说什么

3 个答案:

答案 0 :(得分:0)

"传统"解决方案是拥有辅助列和查找。因此,您可以在A1中输入1,在{B1}中显示{ - 1}},其中可能会在数据输入后隐藏ColumnA。

"综合"解决方案是使用类似VBA的东西 - 根据设置规则替换输入的内容,例如"如果Computer Science替换为1"。

A"中途"解决方案是条件格式设置,其中包含一系列Computer Science规则,可触发Cell Value = 1的自定义格式。

但是,Excel是一个专为数字运算而设计的电子表格程序。这样的替换'真的更适合文字处理包。在电子表格中,如果此类音译的适用范围为'并不限制其余的电子表格功能,其大部分功能将严重削弱。

应对10个标签的10 CF规则是可行的。

答案 1 :(得分:0)

使用数字格式可以完成四个标签。除了有限数量的标签之外,这种方法还有一个缺点,即数字代码不能像你所描述的那样严格分配。

要查看可以通过这种方式执行的操作,请将以下自定义数字格式应用于一系列单元格:

"Computer Science";"Computer Engineering";"Physical Science";"Biology"

现在,当一个值输入该范围内的任何单元格时,会发生以下情况:

  • 如果值为POSITIVE,则计算机科学'显示。

  • 如果值为零,物理科学'显示。

  • 如果值为NEGATIVE,则计算机工程'显示。

  • 如果值是任何TEXT,那么生物学'显示。

但就是这样。可以通过这种方式配置不超过四个标签。

如果你想要这样做,最好的解决方案是将自定义代码翻译成文本的VBA例程。

答案 2 :(得分:0)

假设我们要在单元格 A1 中输入 1 92 之间的数字,并在单元格中显示相应的元素。在工作表代码区域中输入以下事件宏:

Private Sub Worksheet_Change(ByVal Target As Range)
   If Intersect(Range("A1"), Target) Is Nothing Then Exit Sub
   Dim I As Long, DQ As String
   DQ = Chr(34)
   I = Range("A1").Value - 1

   ary = Array("Hydrogen", "Helium", "Lithium", "Beryllium", "Boron", "Carbon", _
      "Nitrogen", "Oxygen", "Fluorine", "Neon", "Sodium", "Magnesium", "Aluminium", _
      "Silicon", "Phosphorus", "Sulfur", "Chlorine", "Argon", "Potassium", "Calcium", _
      "Scandium", "Titanium", "Vanadium", "Chromium", "Manganese", "Iron", "Cobalt", "Nickel", _
      "Copper", "Zinc", "Gallium", "Germanium", "Arsenic", "Selenium", "Bromine", _
      "Krypton", "Rubidium", "Strontium", "Yttrium", "Zirconium", "Niobium", "Molybdenum", _
      "Technetium", "Ruthenium", "Rhodium", "Palladium", "Silver", "Cadmium", "Indium", "Tin", _
      "Antimony", "Tellurium", "Iodine", "Xenon", "Caesium", "Barium", "Lanthanum", "Cerium", _
      "Praseodymium", "Neodymium", "Promethium", "Samarium", "Europium", "Gadolinium", _
      "Terbium", "Dysprosium", "Holmium", "Erbium", "Thulium", "Ytterbium", "Lutetium", "Hafnium", _
      "Tantalum", "Tungsten", "Rhenium", "Osmium", "Iridium", "Platinum", "Gold", "Mercury", _
      "Thallium", "Lead", "Bismuth", "Polonium", "Astatine", "Radon", "Francium", "Radium", _
      "Actinium", "Thorium", "Protactinium", "Uranium")

   Range("A1").NumberFormat = DQ & ary(I) & DQ & ";;;"
End Sub

enter image description here
A1 中的值未更改,仅显示。

因为它是工作表代码,所以很容易安装和自动使用:

  1. 右键单击Excel窗口底部附近的选项卡名称
  2. 选择查看代码 - 这会打开一个VBE窗口
  3. 粘贴内容并关闭VBE窗口
  4. 如果您有任何疑虑,请先在试用工作表上试用。

    如果保存工作簿,宏将随之保存。 如果您在2003年之后使用的是Excel版本,则必须保存 该文件为.xlsm而不是.xlsx

    删除宏:

    1. 按上述方式调出VBE窗口
    2. 清除代码
    3. 关闭VBE窗口
    4. 要了解有关宏的更多信息,请参阅:

      http://www.mvps.org/dmcritchie/excel/getstarted.htm

      http://msdn.microsoft.com/en-us/library/ee814735(v=office.14).aspx

      要了解有关事件宏(工作表代码)的更多信息,请参阅:

      http://www.mvps.org/dmcritchie/excel/event.htm

      必须启用宏才能使其生效!