格式化Excel单元格为二进制

我目前正在尝试在Excel中使用一个表来自动生成一些硬件描述语言的代码。

我已经将单元格O5:O20格式化为自定义格式,所以当它从我的表格中为“0”字符表格拉取值时,它也会在前面显示所有的0。 不过,我试图让我的HDL代码自动生成基于表格,所以在单元格R5:R19我有以下代码运行:

=("assign wire_"&N5&" = 4'b"&TEXT(O5, 0000000)&";") 

这默认为:

  =("assign wire_"&N5&" = 4'b"&TEXT(O5, 0)&";") 

理想情况下,第一个代码应该可以创build输出

 =assign wire_0=4'b0000001; 

但是,因为Excel代码强制O5的文本格式为“0”,而不是input“0000000”,所以前面带有零的任何位总线都将丢失。

我的问题是如果有一种方法来强制'TEXT(单元格,格式)'命令接受公式中的7 0格式,因为它被放置在单元格O5:O20上时被接受。

在这里输入图像说明

把七个0放在引号中:

 =("assign wire_"&N5&" = 4'b"&TEXT(O5, "0000000")&";") 

我不知道你是否知道,但Excel内置二进制转换function – =DEC2BIN(9, 4)

您可以按照此处所述使用它:

https://support.office.com/en-us/article/Convert-numbers-to-different-number-systems-880eeb52-6e90-4a9d-9e56-acaba6a27560#bmconverts_a_decimal_number_to_binary