2021年3月27日

Excel や VBA で名前定義を使う人って‥

Excelにある「名前の定義」に関するツイートをまとめてみました。
40
はけた@経理のExcel仕事術 発売中 @excelspeedup

公認会計士のはけたです。2020年8月27日に「会計ソフトのすき間を埋める経理のExcel仕事術」を発売。2019年「いちばんやさしいExcelピボットテーブルの教本」、2018年「関数は"使える順"に極めよう! Excel 最高の学び方」を出版。エクセルセミナー、エクセルVBAツール開発

excelspeedup.com

はけた@経理のExcel仕事術 発売中 @excelspeedup

VBAと名前定義の組み合わせを使う人って、あまり多くないんですか? 行・列の挿入・削除に合わせて、参照先セルを自動的に追随させるようなプログラムをVBAを書こうと思うと、名前定義を使うしかないんじゃないかと思うんですが。 他に代替手段はあるんでしょうか?

2021-03-26 12:09:51
名前定義使わない派の意見
りゅうりゅう @blacklist_ryu

'71年誕:PC歴40年:プログラマー:小学生からプログラミング(アセンブリ、BASIC)始めました。銀行の基幹システム開発やってた頃はアセンブリ、COBOL、PL/Iをやってました。現在はVBAメインでRPA、DX Suiteも使ってます。自己紹介欄にVBAって記載の方には勝手にフォローしてます!

りゅうりゅう @blacklist_ryu

@KotorinChunChun 名前の定義はあまり好きじゃないのでほとんど使ってないなぁ

2021-03-26 08:07:37
りゅうりゅう @blacklist_ryu

条件付き書式設定のコピーの増殖は嫌いだし、シートコピーで名前の定義も同様になるので、好きになれなくて「名前の定義」は極力使わない派。 twitter.com/blacklist_ryu/… pic.twitter.com/sgs4uoObut

2021-03-26 08:18:30
拡大
VBA の学習 @VBA31125434

@blacklist_ryu @KotorinChunChun 名前を定義すると使い方によっては便利なんですけどね!管理が大変か。。。

2021-03-26 08:21:31
りゅうりゅう @blacklist_ryu

Excelの名前の定義って、挿入には追従しても、最終行列には追従してくれないよね? テーブル設定なら追従してくれるけど。

2021-03-26 14:24:22
りゅうりゅう @blacklist_ryu

確認したけど、やっぱり名前の定義だと、最終行列の次の未入力行列に直接値を入力しても範囲は追従してくれないね。 挿入にも対応するシステムなら、続いた未入力行に直接いれても範囲が拡大するようなことも想定したいところ。 twitter.com/blacklist_ryu/…

2021-03-26 14:40:40
Excel VBA Diary @excelvba_diary

パソコン黎明期からプログラミングに関わって30年超。最近はExcel VBAで業務の効率化に邁進▶️専門分野:品質管理、ISO 9001、SQA、統計解析、製品安全、技術法規制、信頼性試験▶️ベルギービールプロフェッショナル(JBPA認定)◆東京マラソン2019初応募で初当選、初完走◆20年超のラグビー観戦マニア

Excel VBA Diary @excelvba_diary

@blacklist_ryu VBAにとって名前定義は悩ましいですね。Configuration情報をVBAの外に出す発想のひとつですが、利用者の意図しない改変に対応できません。マクロと同一のブックか、そうでないかで、ひとまず判断の目安にしています。

2021-03-26 20:48:37
りゅうりゅう @blacklist_ryu

@excelvba_diary 僕は普段使ってないので、もう食わず嫌いになってますw

2021-03-27 02:24:28
Excel VBA Diary @excelvba_diary

@blacklist_ryu 私もほとんど使っていません。唯一、マクロと同一のブックで、メールテンプレート用のシートで使ったくらいです。よそのブックの名前定義なんて怖くて使えない。 Const TargetTableTop As String = "B3" などとマクロ側で決め打ちしてます。

2021-03-27 06:02:37
ももいろ @shuto414

@blacklist_ryu 私も名前の定義は極力使わない派です。 人のつけた名前のトラップに何度引っかかったか… 「ここ、名前が定義されてるな」 って一目見れば誰でもわかるシステムだったら使うかも知れないけど…(自動でセルが網掛けされる、とか) 自分だけで使うファイルなら良いんですけどね…

2021-03-26 14:02:42
FukuCyndi papa @FukucyndiP

名前の定義って、コードは読みやすくなるのかもしれないけど・・ 後でそれがどこのセルを参照してるのか分からなくなって探すの大変になるから、ほとんど使ってないなぁ-ω-) twitter.com/excelspeedup/s…

2021-03-26 08:56:41
みなか™ @orgmrm

セルの名前定義は、シートをコピペするときにOK連打になるので、いいイメージがない twitter.com/kotorinchunchu…

2021-03-27 08:07:36
KaoTech @Kao_Tech_

@ExcelVBAer @sirururun 名前の定義されてるとはしらずシートコピーしたときに、「名前を変更しますか?」が出続けてExcelごとおとさないとそのメッセージ止まらなくなったトラウマから、人に渡すものでは使わないと心に決めました!

2021-03-26 21:33:22
踊るエクセル@VBEアドイン作ってVBEハック中・・・ @ExcelVBAer

#Excel #VBA 専門SE・PG #VBAer #VBE が新しくなるアドインを公開中~ 毎年お盆に阿波おどり踊ってます♪ (ノ^^)ノヤットサ- <略歴> 大阪の化粧品会社で4年 (業務改善:100h/月) 東京のExcel専門システム開発会社で約4年 東京でフリーランス半年 大阪でフリーランス4年 (いま)

excelsystem.jp/DanceDanceDanc…

踊るエクセル@VBEアドイン作ってVBEハック中・・・ @ExcelVBAer

@sirururun ですねー 僕も一時期よく使ってましたが、 ほとんど使わなくなってきました💦

2021-03-26 13:19:02
踊るエクセル@VBEアドイン作ってVBEハック中・・・ @ExcelVBAer

@sirururun ユーザーが シートをコピーしたりすると 無限増殖してウイルス化しちゃって💦 というか、 現場で遭遇して あぁこうなっちゃうんだ・・と。 場合によっては、 操作できなくなったり😱 それから、 ・名前の定義 ・条件付き書式 ・スタイル は極力使わない というマイルールにしました😅

2021-03-26 19:24:59
踊るエクセル@VBEアドイン作ってVBEハック中・・・ @ExcelVBAer

@sirururun @Kao_Tech_ 名前の定義もスタイルも、 そっと増殖してくから恐い💦 せめてコピーするよ?? とか出してほしかった・・🐣 ちな、スタイルのMaxは65536です For Each で回すと何故か重いので、 For i で処理するのが◎ あと、稀にですが削除できないヤツも👿 万が一、遭遇したら つ excelsystem.jp/Library/archiv…

2021-03-27 11:57:59
名前定義使う派の意見
VBA模索中 @TJAHol9XCmIT9nu

@excelspeedup 私は結構、名前定義との組み合わせを使用します。

2021-03-26 12:14:13
剣持ホロロ @ksgiksg

@excelspeedup テーブル使うことが多いです 広義の名前の定義かもしれませんが…

2021-03-26 12:25:35
はけた@経理のExcel仕事術 発売中 @excelspeedup

@ksgiksg テーブルは、要件によってはアリな気がしますね。 ありがとうございます!

2021-03-26 12:27:04
残りを読む(96)

コメント

SAKURA87@多摩丁督 @Sakura87_net 2021年3月27日
シートのセルが完全に固定で動かす必要が無いかフォームを用いてシートに依存しないときは使わない。  ある程度柔軟性が必要でマクロを触れないくらいの人がメンテする可能性があるなら、どういう仕様になっているのかを書き残した上で名前の定義を使う。  完全に自分と同等の技能を持った人しかメンテしないなら使わない。  って言う感じで使い分けてる。
3
Naruhito Ootaki @_Nekojarashi_ 2021年3月27日
最下行にダミーの行を作って適当なセルに「行を増やすときはここより上に挿入してくれ」とか書いておいて、その行まで範囲にしとけば増やしても漏れることはないけどね。
0
SAKURA87@多摩丁督 @Sakura87_net 2021年3月27日
ちなみに作業者が任意に行を挿入する可能性があるようなものならヘッダーだけ名前を定義してそれ以降のデータは何か別の物をトリガーにしてそこまで処理させるのがいい。
3
aki @Yy7_f 2021年3月27日
シートに名前をつけるとVBAがスッキリすることはあまり知られていない気がする。
1
T_Taka @t_taka 2021年3月27日
利便性はわかるけど、コピーされまくった挙げ句名前定義に大量のゾンビ放置されてる資料よく見かけるので、あまり使わないようにしてる。
7
kusano @t_kusano 2021年3月27日
excelで凝ったことするのやめてくれ。誰にもメンテできない神エクセル(褒めてない)が増殖するだけだ。c#でもphpでもなんでもいいからプログラムで処理してくれ。
3
yuki🌾㊗️6さい🎉⚔ @yuki_obana 2021年3月27日
そもそもEXCELでやることってレコード生成がSQLか手動かでそれ50シートくらいなんか作っててリレーション組んで再度SQLで新しいシートにぶち込むとかそんなのからせいぜいがグラフ化してぶん投げて最終的にコピペで軟化の資料に張り付ける程度だと思うのでそこまでなんか複雑なことやる必要がどこにあるのかわからないでござる(´・ω・`)OCR文書の取り込みとか適当に間に噛ませてるときはとりあえずGoogle各種サービスのほうが安定だしスタンドアローンでそこまで深刻なのやらせるやつが悪い
0
rambda(仮) @rambda_kari 2021年3月27日
てか、マクロで名前定義使うのって特定のブック(というか自分自身)に対してだけだろう? 汎用的な処理を処理対象のブックの名前をトリガーにして……なんてできるわけがないし、特定のxlsmブックがシーとのコピー繰り返して名前欄がわけのわからんことに……なんてならないだろう?
0
鹿 @a_hind 2021年3月27日
利用者が自分自身か仕様を十全にわかっている人間のみで不用意な改変が発生しない環境くらいでしか安心して使えない。 下手に作ると作成者が忘れたころに滅茶苦茶にされて壊れた、バグあるから直してやくめでしょ。って言われるから使わない。 業務で使用するならまずExcelの機能よくわからない人がいじくり倒してもいい前提で考えないと必ず自分に返ってくる。複雑なことはしない。
0
ですの @_desuno_ 2021年3月27日
t_taka 名前定義のゾンビ化問題は普通に利便性が落ちるから名前定義自体を使わないでくれますってなること多々あるんよなあ
1
H.C. @HC97908004 2021年3月28日
もうExcelのファイルはローカル環境から外に出さないで欲しい。
0
ask9@DOI7/9 @ask9 2021年3月28日
世界中を巡ってきたクソ重いExcelブックを開いたらまず最初に「名前の定義」を削除する派ですね。リンクも。削除しつつ痕跡を見てあーこれZ社のテンプレが初代かとか見て笑ったりします…自分用なら便利なんですけどね。無限クリックは嫌だ…
0
SAKURA87@多摩丁督 @Sakura87_net 2021年3月28日
rambda_kari マクロ自体よりも、マクロが処理して出て来た結果を利用するときに、何も考えずに全コピーしてしまって名前の定義ごとコピーして無意味な名前の定義が流用先に残った結果、マイクロソフトの必殺技ダイアログバーストストロームで編集の手間がかかるっていう所が問題なんです。基本的には値の貼り付けで回避できるんですけど、多くの人はそこまで考えてないですからね。
1
エルボゥ @PizzaElbow 2021年3月28日
どれも一長一短だから正直どちらでもいいって感じだな…。 マクロから参照する場所に名前の定義を使ったら、そのブックはユーザーによって名前の定義が無限増殖した邪悪なブックになる。 マクロから参照する場所に名前の定義を使わずマクロ内部にアドレスをもたせると、勝手に追加された行列で密かに正しく動作していない邪悪なブックになる。 どちらにせよ行き着く先は怪物なので…。
0
乾也春海 @kanbaru 2021年3月29日
私の場合は最終的にほかの方に管理を預けて自分はいなくなるので、引き継ぐ方のスキルにもよりますが極力管理が面倒になりやすいものは使わないようにしています。課・部単位で業務効率化して引き継いで去っていくのがここ数年のお仕事なので。
0
なかず @h5YkVfIcMF4yTlN 2021年4月10日
単列リストに名前定義を導入する。最後の項目とひとつ上(念の為2つ)にダミーとして「---」なり「***」なりを埋めて、その上なら行の追加削除していいよと明記する。 これ以外の名前定義はせず、面倒でもリスト形式はテーブルにする。 それ以外はセル範囲のみを定義したシートを作って設定し、VBAではそこを常に参照させる。
0