Ist die Namenslänge eines Excel-Arbeitsblatts begrenzt?

Wenn ich versuche, einen längeren Arbeitsblattnamen mit ruby und win32ole mit dem folgenden Code festzulegen:

require "win32ole"
excel = WIN32OLE.new('Excel.Application')
excel.Visible = 1
puts excel.version
workbook = excel.Workbooks.Add
worksheet1 = workbook.Worksheets.Add
worksheet1.Name = "Pseudopseudohypoparathyroidism" #Length 30, fine
worksheet2 = workbook.Worksheets.Add
worksheet2.Name = "Supercalifragilisticexpialidocious" #Length 34, not fine

Ich bekomme folgendes:

12.0
-:9:in `method_missing': (in setting property `Name': ) (WIN32OLERuntimeError)
    OLE error code:800A03EC in Microsoft Office Excel
      You typed an invalid name for a sheet or chart. Make sure that:

 The name that you type does not exceed 31 characters.
 The name does not contain any of the following characters:  :  \  /  ?  *  [  or  ]
 You did not leave the name blank.
    HRESULT error code:0x80020009
      Exception occurred.
        from -:9:in `<main>'

Die Version 12.0 gibt an, dass Excel 2007 ausgeführt wird, beschwert sich jedoch darüber, dass der Arbeitsblattname zu lang ist. Ich habe mir @ angesehExcel 2007 Spezifikationen und Grenzen wie in @ erwähdiese verwandte Antwort, und ich konnte es nicht finden, eine solche Grenze zu erwähnen. (Der Versuch, ein Arbeitsblatt manuell umzubenennen, deutet jedoch auf eine solche Beschränkung hin.)

Gibt es ein Limit, und ist es ein hartes Limit oder eines, das durch Ändern der Excel-Konfiguration geändert werden kann?

Antworten auf die Frage(10)

Ihre Antwort auf die Frage