TextBox Excel vba中的波斯语日期格式

时间:2019-06-03 09:37:20

标签: excel vba date persian-calendar

我正在尝试在某些工作表内的文本框中应用波斯日期格式。 现在,文本框以“ dd / mm / yyyy hh:mm”格式存储日期,这就是我自己应用的内容。 但是我正在努力在这些文本框中应用波斯语日期。当我将单元格的日期格式更改为波斯语时,我记录了一些宏,并且我试图在文本框中使用它,但是此代码似乎无法正常工作。

这是我现在正在使用的代码,它可以正常工作

TextBox1 = Format(TextBox1, "dd/mm/yyyy hh:mm")

以及我试图用来套用波斯语的那些行,但是我没有任何作用

TextBox3 = Format(TextBox3, "[$-fa-IR,16]dd/mm/yyyy;@")

这是录制宏并将日期格式手动更改为波斯语的效果。从这一行中,我得到了一个公式,并尝试在上面实现它。

Range("J30").Select
    Selection.numberFormat = "[$-fa-IR,16]dd/mm/yyyy;@"

任何人都可以为我提供一些合理的解决方案吗?

预先感谢您的帮助。

2 个答案:

答案 0 :(得分:0)

您安装了波斯语吗?

文件>选项>语言> [添加其他编辑语言]-选择波斯语>添加>确定

您可能需要重新启动Excel,并可能需要重新应用格式。

答案 1 :(得分:0)

此博客文章应该对您有所帮助,因为它涵盖了许多不同的日期格式,包括波斯语https://www.jquery-az.com/3-ways-change-date-format-excel-14-date-formulas/

在excel中,以下公式将用波斯语格式化标准日期:

=TEXT(A1,"[$-0429]mmmm d,yyyy")

因此在VBA中,以下方法应该起作用:

Range("J30").numberFormat = "[$-0429]mmmm d, yyyy"

就文本框内的格式而言,假设文本框文本引用的是单元格位置,则格式化此单元格位置将影响文本框的格式-请参见下图。

enter image description here

如果您尝试直接在文本框中设置文本格式,则可以尝试在.eg上面的代码段中添加.value。

TextBox3.value = Format(TextBox3.value, "[$-fa-IR,16]dd/mm/yyyy;@")

我只能在工作中访问Office for Mac,并且我无法测试该功能。 此博客文章讨论了如何通过VBA将格式应用于文本框,但可能不支持语言格式选项。如果是这样,您可以考虑修改文本框以引用可以设置格式的单元格位置。

https://www.extendoffice.com/documents/excel/4899-excel-format-textbox-as-currency.html

相关问题