德语系统下Excel图表X轴VBA设置日期格式异常问题咨询
解决德语系统下Excel VBA设置X轴日期格式异常问题
问题原因
德语系统中,Excel的日期格式规则和英文存在差异:
- 年份后两位的占位符是
JJ(对应英文的YY) /是日期分隔符的占位符,会自动替换为系统默认的日期分隔符(德语系统默认是.)
你手动设置时用的MM/JJ符合德语格式规则,所以显示正常;但VBA里用MM/YY时,YY不被德语Excel识别,同时/被替换成.,最终显示为MM.YY。
解决方案
方案1:使用德语格式代码(推荐)
直接沿用手动设置有效的格式代码MM/JJ,和系统语言匹配:
Dim cht As Chart Set cht = ws.Shapes.AddChart2(240, xlXYScatterLinesNoMarkers).Chart cht.Axes(xlCategory).TickLabels.NumberFormat = "MM/JJ"
方案2:强制保留/分隔符
如果需要固定用/作为分隔符,不受系统设置影响,给/加上转义符\:
Dim cht As Chart Set cht = ws.Shapes.AddChart2(240, xlXYScatterLinesNoMarkers).Chart cht.Axes(xlCategory).TickLabels.NumberFormat = "MM\/YY"
内容的提问来源于stack exchange,提问作者Matthias Pospiech
相关产品推荐
相关产品推荐

