私は以下を使用してシートに名前を付けています:
arrayCollabName = Array("CBDeltaBlockStatus_SAP03_to_Delta01", "CBDeltaBlockStatus_SAP03_to_Delta02", "CBDeltaDeliveryInformation_SAP03_to_Delta01")
If Len(arrayCollabName(idx)) > 31 Then
ActiveSheet.Name = Left(arrayCollabName(idx), 31)
Else
ActiveSheet.Name = arrayCollabName(idx)
End If
配列では、名前が31文字に切り捨てられ、VBが「シートの名前を別のシート、参照されているオブジェクトライブラリ、またはvisualbasicによって参照されているワークブックと同じ名前に変更できません」というエラーをスローすると、1番目と2番目の名前は似ています。
いずれにせよ、エラーなしでこれを実行し、シートにCBDeltaBlock_SAP03_to_Delta01およびCBDeltaBlock_SAP03_to_Delta02または任意の名前を付けることができます。