VBA100本ノック 46本目を動画で解説しています。Excelの神髄さんの模範解答はコチラ
問題
#VBA100本ノック46本目
1行目の見出しをそのセルの名前定義(ブック範囲)に設定してください。
・記号や空白は”_”に置換
・先頭使用不可文字の場合は先頭に”_”を補う
エラー回避できない場合はイミディエイトに出力
※見出しは重複しないように入力
※既存の名前定義は無視して良い
※シートは任意
※1行目だけのデータで考えてください。
1行目のセル値を、1行目のそのセルの名前定義に設定するという事です。
手動で名前定義する時に自動変換されるものを自力実装するという事です。

解答
Sub ノック46本目()
Dim ws As Worksheet
Set ws = Sheets("名前定義")
With ws
.Range("A1").CurrentRegion.Copy .Range("A2")
.Range("A1").CurrentRegion.CreateNames Top:=False, Left:=False, Bottom:=True, Right:=False
.Range("A1").CurrentRegion.Offset(1).ClearContents
End With
End Sub

新人君
名前定義に設定できる
文字に制限があるなんて
知りませんでしたね!

ブチョ
俺は太陽が生まれる前から
知ってたぞ!!

新人君
お前は一体なんなんだ…
コメント