【问题标题】:Converting Month name to a 3 letter abbreviation将月份名称转换为 3 个字母的缩写
【发布时间】:2016-08-27 01:39:24
【问题描述】:

有人知道如何将月份名称转换为 3 个字母的缩写吗?例如,如果月份是九月,那么它应该只返回九月。我一直在网上搜索,但不幸的是得到了答案。谢谢!

【问题讨论】:

    标签: vba excel


    【解决方案1】:

    你也可以试试这个:

    Sub Demo()
        Dim MonthName As String
        MonthName = "September"
        MsgBox Format(DateValue("01 " & MonthName & " 2012"), "MMM")
    End Sub
    

    此解决方案源自@SiddhartRout 对here 的回答。

    【讨论】:

      【解决方案2】:

      试试下面的

      Sub test()
          Dim a As String
          a = Format("11/10/2015", "MMM")
          MsgBox a
      End Sub
      

      Sub test()
          Dim a As String
          a = Format(Now(), "MMM")
          MsgBox a
      End Sub
      

      如果您将月份名称作为变量,那么

      Sub test()
          Dim a As String
          a = "February"
          MsgBox Mid(a, 1, 3)
      End Sub
      

      【讨论】:

      • 如果我有一个等于月份名称的变量怎么办?
      • @ramedju: Mid(monthNameVariable, 1, 3)
      • @shahkalpesh MID 有什么用?还有 1 和 3?
      • @ramedju:Mid 是一个函数,它接受一个字符串并提取其中的一部分。在这种情况下,它是从位置 1 提取 3 个字符。
      【解决方案3】:

      始终有效的方法是制作自己的功能,例如:

      Function Month2Mon(month) As String
          Select Case LCase(month)
          Case "january": Month2Mon = "Jan"
          Case "february": Month2Mon = "Feb"
          ...
      End Function
      

      【讨论】:

      • 太难了??你的意思是?将始终如您所愿。如果您愿意,可以将month 更改为一个号码
      猜你喜欢
      • 2014-03-30
      • 1970-01-01
      • 2015-02-11
      • 2012-08-07
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多