No.2ベストアンサー
- 回答日時:
テンプレートを開くたびに既に使った連番+1が自動的に決められたセルに書き込まれるようにしたいということだと思いマクロを書いてみました。
はずしていたら読み飛ばして下さい。キー記録での方法はよく分かりませんので直接書いています。
まず、自動ではありませんが、例えばA1セルに[No.000000]を設定したい場合、
A1:="[No."&RIGHT("00000"&B1,6)&"]"
としてB1に数値を入力する方法はどうでしょう?B1セルの色を白にするとか、セルの書式設定→表示形式のユーザー設定でスペース1つを設定しておけばB1は表示されません。個人的に使用するならB1を覚えておいて入力すればいい?次はむりやり自動的に表示する方法です。
この質問は今回使う連番をどうやって決めるかが要点だと思います。テンプレートに書き込んでおくのも面倒ですし、既に作成したファイルをサーチするのも重い処理になってしまいます。
そこで、テキストファイルを用意して、このファイルに記録した番号を使うようにしています。
ファイルには次に使われる連番をセットしておきます。ハードディスクのどこかのフォルダにメモ帳等を使って次に使う番号を書いたテキストファイルを作ります。(101番だったら101を入力します)
このファイルのフルパスは下記マクロにセットします。
テンプレートの Workbook_Openイベントに書き込みます。(手順は下に)
ツール→マクロ→Visual Basic Editor でVBE画面に移ります。
表示→プロジェクトエクスプローラ でプロジェクトエクスプローラを表示し、
ThisWorkbook をダブルクリックしてエディット画面を出します。
下記のコードをコピーして貼り付けます。
次に使う番号を書いたテキストファイル名と、自動連番をセットするシート名とセル番地は
ご自分のものに合うように変更して下さい。(「これは例です」と書いた箇所です)
次に、自動連番をセットするセルは未入力状態にします(クリアしておきます)
終ったらテンプレートとして保存して下さい。(xlsファイル形式でテストして完成したらテンプレートにしたらどうでしょうか)
欠点・・・
xlsファイルとして保存してもマクロが残ってしまいます。 m(_ _)m
ただし、連番を登録するセルに既に入力(xlsファイルになっている)があれば更新しません。
テンプレートを開いた時点でテキストファイルの連番が更新されるため、そのファイルを保存しなければ連番が飛ぶことになってしまいます。手で修正が必要です。
参考になればと思い作りました。
'***使用済み最終番号を書いたファイル名
Const renbanFile = "A:\Renban\RenbanData.txt" 'これは例です
'テンプレートを開いた時点で連番を読込みシートに書く
Private Sub Workbook_Open()
'書き込む位置の定義
Dim rg As Range '自動連番をセットするセル
Set rg = Worksheets("Sheet1").Range("A1") '***これは例です
If rg <> "" Then
Exit Sub '既に書かれていれば何もしない
End If
Dim fileNo As Integer 'ファイル番号
Dim renban As Long '連番
'連番の入力
fileNo = FreeFile
Open renbanFile For Input As #fileNo
Input #fileNo, renban: Close
'連番を書き込む
rg = "[No." & Right("000000" & renban, 6) & "]"
'連番の更新(次回使う番号を書込み)
Open renbanFile For Output As #fileNo
Print #fileNo, renban + 1: Close
End Sub
かなり詳しく内容を教えていただきまして、本当に有難うございます
また、お礼の返事も大変遅くなりましてすみませんでした。と言いますのもパソコンが故障してしまいましてどうにも成りませんでした。回答いただきました内容で
ベーシックは全然判らないので、ベーシックの解説書を買ってこれから勉強しますので、今後とも宜しくお願いします。
No.1
- 回答日時:
補足ようきゅ~
テンプレートって、EXCEL2000特有の機能?
それとも自作のひながた(ワークシート)のことをfuji25さんがそう読んでいるだけなの?
連番の位置とは、シートごとに特定のセルを決めているの?そして、そんなシートが1つのブックにたくさんあるってこと?毎回手入力ってことは、さらにそんなブックがたくさんある(作って行く)ってこと?
あと、マクロ(VBA)は、つかえますか?もし使えるなら、
マクロではいやな理由があるの?
で、とりあえず、勝手な推定でいうと・・・
EXCELマクロで可能です。
(1)ツール/マクロ/新しいマクロ記録
マクロ名など適当に・・・
(2)やりたい操作をひとつやる
(あるシートを選択し、連番のセルに、
設定したい番号を入れる)
(3)マクロ記録の終了
(4)ツール/マクロ/VisualBASIC....
(5)さっき(1)で選んだ保存先を指定すると
記録されたマクロが出ます。
(6)ここからプログラムをちょっと変更すると
できるんですが・・・
解説書などがあったほうがいいです。
じっと見てわかっちゃう人もいますが・・
回答くださいまして有難うございましたまた、お礼の返事が遅くなりましてすみませんでした使っているパソコンが故障してましてようやく直りました。
マクロを勉強して見ます。有難うございました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・あなたの人生で一番ピンチに陥った瞬間は?
- ・初めて見た映画を教えてください!
- ・今の日本に期待することはなんですか?
- ・【大喜利】【投稿~1/31】『寿司』がテーマの本のタイトル
- ・集中するためにやっていること
- ・テレビやラジオに出たことがある人、いますか?
- ・【お題】斜め上を行くスキー場にありがちなこと
- ・人生でいちばんスベッた瞬間
- ・コーピングについて教えてください
- ・あなたの「プチ贅沢」はなんですか?
- ・コンビニでおにぎりを買うときのスタメンはどの具?
- ・おすすめの美術館・博物館、教えてください!
- ・【お題】大変な警告
- ・【大喜利】【投稿~1/20】 追い込まれた犯人が咄嗟に言った一言とは?
- ・洋服何着持ってますか?
- ・みんなの【マイ・ベスト積読2024】を教えてください。
- ・「これいらなくない?」という慣習、教えてください
- ・今から楽しみな予定はありますか?
- ・AIツールの活用方法を教えて
- ・最強の防寒、あったか術を教えてください!
- ・【大喜利】【投稿~1/9】 忍者がやってるYouTubeが炎上してしまった理由
- ・歳とったな〜〜と思ったことは?
- ・モテ期を経験した方いらっしゃいますか?
- ・好きな人を振り向かせるためにしたこと
- ・スマホに会話を聞かれているな!?と思ったことありますか?
- ・それもChatGPT!?と驚いた使用方法を教えてください
- ・見学に行くとしたら【天国】と【地獄】どっち?
- ・これまでで一番「情けなかったとき」はいつですか?
- ・この人頭いいなと思ったエピソード
- ・あなたの「必」の書き順を教えてください
- ・14歳の自分に衝撃の事実を告げてください
- ・人生最悪の忘れ物
- ・あなたの習慣について教えてください!!
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Excelで数字を入れたら対応する...
-
エクセルで複数のシートのクリ...
-
エクセル シート内の一番下のセ...
-
マクロ1があります。 A1のセル...
-
【エクセル】「実行時エラー’10...
-
エクセルのマクロ実行後にカー...
-
Excel VBAでのWorksheet_Change...
-
EXCELのダイアログシートって、...
-
【エクセル】フリーワード検索...
-
Excelにて、同じ画像を複数のセ...
-
エクセル マクロ 一定時間おき...
-
前月分を次月シートに繰越でき...
-
セルの一部分だけを太字にする方法
-
長い時間かかるマクロが実行中...
-
エクセルファイルを開いた回数...
-
Excel VBA で行列計算をさせた...
-
EXCELのマクロで数値の時間計算。
-
Excelのシート上のShapeにイベ...
-
マクロで年齢の自動計算
-
excelのマクロが上手く動作しま...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Excel VBAでのWorksheet_Change...
-
エクセルで複数のシートのクリ...
-
マクロ1があります。 A1のセル...
-
Excelで数字を入れたら対応する...
-
エクセル シート内の一番下のセ...
-
エクセルで特定の行だけ行削除...
-
【エクセル】フリーワード検索...
-
EXCELのダイアログシートって、...
-
長い時間かかるマクロが実行中...
-
エクセルファイルを開いた回数...
-
Excelのシート上のShapeにイベ...
-
【エクセル】「実行時エラー’10...
-
エクセル:セル内の文字列の最...
-
エクセルVBAで内容変更のたびに...
-
Excelでセル内の文字をファイル...
-
エクセル マクロ 一定時間おき...
-
セルの一部分だけを太字にする方法
-
前月分を次月シートに繰越でき...
-
シートではなくBOOK間で重複し...
-
Excelにて、同じ画像を複数のセ...
おすすめ情報