2014-10-31 108 views
-1

我正在尝试编写Excel 2010 VBA宏。作为一名程序员,我很有经验,但是在个人电脑上编程,或者像VBA这样的PC语言,我没有经历过。在单元格范围内,根据前面的单元格输入单元格值

我想看看一系列单元格(D4:D100)。如果每个单元格包含一个特定的值,那么我想插入另一个值到下一个单元格中。例如,我想将每个出现的ESPN更改为773。我想将ESPN2更改为772

如果你能告诉我如何做到这一点,我能够做任何额外的改变其他值。

+0

嗨皮特和欢迎。我冒昧地删除了部分你的问题,因为它是4 [看这里](http://stackoverflow.com/help/on-topic),但如果你愿意的话,可以随时回滚。什么是“紧挨着” - 紧挨着它的右边?可能配方而不是VBA套装? – pnuts 2014-10-31 19:09:25

+0

是否存在针对价值和回报表的“VLOOKUP”公式不合适的原因? – Jeeped 2014-10-31 19:13:58

回答

0

好吧,我想你也许会想用一个选择块:

For j = 4 to 100 
    Select Case Range("D" & j).Value 
     Case "ESPN" 
      Range("D" & j).Value = "773" 
     Case "ESPN2" 
      Range("D" & j).Value = "772" 
     'etc. 
    End Select 
Next j 

至于VBA,我就从here开始。

请注意,在你的问题不清楚的语句:

如果每个单元格中包含一定的价值,那么我想插入另一个值到下一个单元格。例如,我想将每次出现的ESPN更改为773.

如果要将每次出现的ESPN更改为773,请使用上面的代码。否则,请将Range("D" & j)替换为Range("D" & j+1)(如果您的意思是连续单元格)或Range("E" & j)(如果您的意思是出现在右侧的单元格)。

+0

感谢您的建议。在玩了一段时间之后,我就做到了我想要的。其他人建议VLOOKUP。我想我应该考虑一下,以及为了我自己的教育。 – Pete 2014-11-04 21:29:04

相关问题