Java Excel创建在Excel列中生成值为1的IF语句

Java Excel创建在Excel列中生成值为1的IF语句,java,python,excel,vba,Java,Python,Excel,Vba,我正在尝试编写一个在excel中运行的脚本。目前,我有一个excel文件,其中一列包含超过1000个州的首字母缩写,例如,NJ、MI、OH、TX。尽管如此,我还有3列代表A、B和C区域 如果state initial是NJ,我将尝试在特定的对应区域列中返回值1。例如,如果状态初始值为NJ,则在相应的列和行区域B中返回1。如果状态初始值为TX,则在相应的列和行区域A中返回1。如果状态初始值为安大略,则在区域C中返回值1,依此类推 有人知道我怎样才能完成这项任务吗?使用VBA、python,无论哪种

我正在尝试编写一个在excel中运行的脚本。目前,我有一个excel文件,其中一列包含超过1000个州的首字母缩写,例如,NJ、MI、OH、TX。尽管如此,我还有3列代表A、B和C区域

如果state initial是NJ,我将尝试在特定的对应区域列中返回值1。例如,如果状态初始值为NJ,则在相应的列和行区域B中返回1。如果状态初始值为TX,则在相应的列和行区域A中返回1。如果状态初始值为安大略,则在区域C中返回值1,依此类推

有人知道我怎样才能完成这项任务吗?使用VBA、python,无论哪种语言​ 这将使它做得最好

另外,请参阅附件中的图片,以便更好地理解。下面的代码是我尝试一次执行一个状态的代码

次区域 如果范围A:A.Value=NJ,则 范围C:C.Value=1 如果结束 端接头

一次一个可以工作,但是如果数据很大,你可以考虑下面的版本2……/P> 那么,试试这个:

=IF(A1="NJ",1,0)
在单元格C1中输入,然后向下拖动即可

您可以考虑一个值表,并在一个函数中处理所有状态:

=vlookup(A1,$G$1:$H$4,2,0)
版本2的图像:

您还可以将索引与匹配一起使用:

=index($H$1:$H$4,match(A1,$G$1:$G$4,0))

如果ActiveSheet.Cells2,2.Value=Percentage,而ActiveSheet.cellsastrow-1,5.Value则选择 MsgBox请将百分比类型选项重置为选择以红色突出显示的单元格(&Chr13) ActiveSheet.CellsLastRow-1,5.Interior.ColorIndex=38 调用ResetCustomDocProp 退出功能 ElseIf ActiveSheet.Cells2,2.Value=Percentage,ActiveSheet.cellsastrow-1,6.Value-vbNullString然后 MsgBox请设置以红色和Chr13突出显示的单元格的百分比单元格应为空 ActiveSheet.CellsLastRow-1,6.Interior.ColorIndex=38 调用ResetCustomDocProp 退出功能
ElseIf ActiveSheet.Cells2,2.Value=Percentage和ActiveSheet.CellsLastRow-1,5.Value=Select和InstrctiveSheet.CellsLastRow-1,6.NumberFormat%,如何将状态分配给区域?我选择将这些状态分配给区域a、B或C.NJ和OH位于区域B中,MI&TX位于A区,安大略位于C区。此外,每个州只能分配给一个地区。感谢您的回复!因为我处理的是超过10k+的状态/数据,您建议使用一个可以包含所有状态并在其相关字段中输入1的脚本吗?例如,如果区域A/列E的AL、AK、AR、CO、HI返回值为1,区域B/列F的CT、DE、FL、GA返回值为1,如果区域C/列G的阿尔伯塔省、安大略省、魁北克省返回值为1,那么是1000还是10000?您可以在脚本中应用相同的逻辑,甚至可以在脚本计算完成后使用公式并粘贴特殊值,这将降低开销…在此处进行搜索,可能已经讨论过类似的问题,请参阅