• ベストアンサー

エクセルで自動連番

エクセル2000で見積書を作成しています。 項目名等のみのフォーマットを原紙として保存してあり、実際に明細を作成した時は別名で新規保存しているのですが、その原紙を起動した時点で自動的に新しい見積書NO.をつけてくれる簡単な機能などありますでしょうか?

  • rinfu
  • お礼率60% (3/5)

質問者が選んだベストアンサー

  • ベストアンサー
  • a999a999
  • ベストアンサー率68% (11/16)
回答No.3

最初の設定だけ少し手順が必要ですが それ以降はボタン1つなのでご協力下さい。 もしもの場合に備えてバックアップをとってから実施して下さい。 では以下の手順でお願します。 「マクロの貼り付け」 「準備」 「実行」 「マクロの貼り付け」 1.見積のブックを開いて 2.Alt + F11 を押して VBE を起動して下さい。 3.ツールバーの「挿入」-「標準モジュール」 を選んで下さい。 4.出てきた白紙に下のソースを貼りつけて下さい。 5.ツールバーの「ファイル」-「終了してエクセルに戻る」 を選択してエクセルに戻って下さい。 「準備」 1.見積書のシート名を「見積」に変えて下さい。 2.ツールバーの 「ツール」-「マクロ」-「マクロ」を選んで 中から「準備」を選択して、実行して下さい。 これで準備完了です。 「実行」 表示された表に 1.会社名 2.支店名 3.パス を入れて下さい。 1.会社名は実際にあるフォルダの名前を入力下さい。 まだ実際にフォルダが無い場合は、作成後に入力下さい。 3.パスは実際に1の会社名フォルダのある場所を記入下さい。 1と3はそれぞれディスク上に無いとエラーになります。 見積を作成後、スタートボタンを押して下さい。 設定のままだと下の場所に作られます。 例 C:\WINDOWS\日本株式会社\0001アフリカ支社.xls 「注意点」 1.「設定」では、会社名、支店名、パス以外は変更しないで下さい。 行や列の移動や削除は行わないで下さい。 2.シート「見積」は、名前を「見積」以外にしないで下さい。 3.準備作業は最初の1回だけ行って下さい。 2回やるとエラーになります。 (もし行う場合は、シート「設定」を削除してから行って下さい。) 4.登録するフォルダは事前に作っておいて下さい。 実行後に、実在しないフォルダが指定されているとエラーになります。 5.見積番号は、自動連番です。 1度スタートボタンを押すと、番号が1つ進みます。 もしも番号を操作する場合(一つ戻す、リセットするなど)は、 シート「設定」の非表示にしてある2行目の数字 「前回見積No.」を変更して下さい。 他は計算式が入っているので注意下さい。 スタートボタンは右クリックするとコピーができます。 場所やシートを移動する場合は、適当な位置へ動かして下さい。 その他何かあれば小さなことでも構いません、連絡下さい。 下をコピーして貼りつけて下さい。 Sub 見積連番保存() 見積番号 = Sheets("設定").Cells(4, 4) 会社名 = Sheets("設定").Cells(6, 4) 支店名 = Sheets("設定").Cells(7, 4) パス = Sheets("設定").Cells(8, 4) フルパス = パス & 会社名 & "\" & 見積番号 & 支店名 & ".xls" Sheets("見積").Select Sheets("見積").Copy ActiveWorkbook.SaveAs FileName:=フルパス ActiveWorkbook.Close Sheets("設定").Cells(2, 4) = 見積番号 ActiveWorkbook.Save Sheets("設定").Select MsgBox "見積書を保存しました。 " & フルパス End Sub Sub 準備() Sheets.Add ActiveSheet.Name = "設定" Range("C2") = "前回見積No." Range("C4") = "今回見積No." Range("C6") = "会社名" Range("C7") = "支店名" Range("C8") = "パス" Range("C10") = "予定ファイル名" Range("C11") = "予定登録先" Range("D2").FormulaR1C1 = "0" Range("D3").FormulaR1C1 = "=+R[-1]C+1" Range("D4").Formula = "=REPT(0,4-LENB(D3))&D3" Range("D6") = "日本株式会社" Range("D7") = "アフリカ支社" Range("D8") = "C:\WINDOWS\" Range("D10").Formula = "=REPT(0,4-LENB(D3))&D3&D7" Range("D11").Formula = "=D8&D6&""\""&REPT(0,4-LENB(D3))&D3&D7&"".xls""" Range("E2") = "変更不可" Range("E3") = "変更不可" Range("E4") = "変更不可" Range("E10") = "変更不可" Range("E11") = "変更不可" '青 Range("B5:C9,D5:E5,D9:E9,E6:E8").Select With Selection.Interior .ColorIndex = 34 End With 'グレー Range("B2:E4,B10:E11").Select With Selection.Interior .ColorIndex = 15 End With '太字 Range("C2:C4,C10:C11").Select Selection.Font.Bold = True '16ポイント Range("D6:D8").Select With Selection.Font .Name = "MS Pゴシック" .Size = 16 End With '中中 Range("C6:C8").Select With Selection .HorizontalAlignment = xlCenter .VerticalAlignment = xlCenter End With 'height Rows("6:8").Select Selection.RowHeight = 30 'width Columns("A").ColumnWidth = 1.88 Columns("B").ColumnWidth = 7.38 Columns("C").ColumnWidth = 14.5 Columns("D").ColumnWidth = 51.5 Columns("E").ColumnWidth = 8.75 'グループ化 非表示 Rows("2:3").Select Selection.Rows.Group Selection.EntireRow.Hidden = True '罫線 Range(Cells(6, 3), Cells(8, 4)).Borders.LineStyle = xlContinuous Range(Cells(4, 2), Cells(11, 5)).BorderAround xlContinuous 'ボタン作成 Range("C13").Select ActiveSheet.Shapes.AddShape(msoShapeRectangle, 63, 211.5, 90.75, 54).Select Selection.ShapeRange.Shadow.Obscured = msoTrue Selection.ShapeRange.Shadow.Type = msoShadow18 Selection.ShapeRange.Line.BackColor.RGB = RGB(255, 255, 255) Selection.ShapeRange.Fill.Visible = msoTrue Selection.ShapeRange.Fill.ForeColor.SchemeColor = 45 Selection.ShapeRange.Fill.OneColorGradient msoGradientHorizontal, 2, 1# Selection.Characters.Text = "" & Chr(10) & "スタートボタン" With Selection.Characters(Start:=2, Length:=7).Font .Name = "MS Pゴシック" .FontStyle = "太字" .Size = 16 .ColorIndex = 7 End With Selection.HorizontalAlignment = xlCenter Selection.ShapeRange.ScaleWidth 1.31, msoFalse, msoScaleFromTopLeft Selection.ShapeRange.ScaleHeight 0.89, msoFalse, msoScaleFromTopLeft Selection.OnAction = "見積連番保存" Range("D13").Select ActiveWorkbook.Save End Sub

rinfu
質問者

お礼

ありがとうございました! 記入して頂いたそのまんましてみたら、完璧にできました! その上、登録まで自動で出来てしまって感激です! お礼が遅くなりましたが、また何かあれば教えて下さい。

その他の回答 (2)

  • a999a999
  • ベストアンサー率68% (11/16)
回答No.2

できます。 マクロになります。 簡単です。 保存は、ブック自体を別名で保存ですか。 名前の付け方の規則を教えて下さい。 見積書No.の付け方も。 保存する場所は一定のフォルダですか。 良かったら回答下さい。

rinfu
質問者

補足

簡単にできますか?有り難うございます! 1.保存はブック自体を別名で保存です。 2.ファイル名は「1234大阪支店」というように、最初に見積NOで、その後ろに支店名などを付けてます。 3.フォルダは、「見積書」というフォルダに、元となる「原紙」のファイルと、同じフォルダ内に各会社名のフォルダを複数作ろうかと思っています。で、各会社のフォルダを開けると、2.の各支店の見積書のファイルがあるという感じで考えています。 4.見積書No.の付け方は、今はただ単に「0001」から初めて順番に連番でとっています。 すみません、わかりにくくて… この説明で理解していただけましたでしょうか? よろしくお願い致します。

  • nishi6
  • ベストアンサー率67% (869/1280)
回答No.1

簡単にはできないような気がします。 『自動的に新しい見積書NO.をつけてくれる』が何に対して付けるのか不明ですが・・・ かなり前に同様の質問に回答した記憶があります。 『エクセルのワークシート(テンプレート)に自動連番を付けられますか』 http://www.okweb.ne.jp/kotaeru.php3?q=82921 ご参考に。

参考URL:
http://www.okweb.ne.jp/kotaeru.php3?q=82921
rinfu
質問者

お礼

ありがとうございました。 質問する前に検索して読ませて頂いたのですが、何分素人で理解ができませんでした。でも、これを機に、ベーシック?なるものを勉強していきたいと思いますので、また宜しくお願いします。

関連するQ&A

  • 再度、『エクセルで自動連番』!

    1.見積書を作ったものは問題ないのですが、次に元となる『原紙』を開くと、前回に作ったものが残ってるのですが…。。。 原紙は、項目名や罫線などのフォーマットとして残しておきたいのですが、できますでしょうか?それとも私の操作ミスでしょうか? 2.ネットワークでつながっているので、見積書関係はサーバーに入っています。 他の人のパソコンで見積書を入力して、『設定』シートの『スタートボタン』を雄と、以下のメッセージが出ます。 このプロジェクトのマクロは無効に設定されています。マクロを有効にする方法についてはオンラインヘルプまたはホストアプリケーションのドキュメントを参照してください。 というメッセージが出てきます。 度々すみません。よろしくお願い致します。 関連URL:http://oshiete1.goo.ne.jp/kotaeru.php3?qid=242370

  • 複数シートの特定の位置に連番を振る方法??

    関数もマクロもまだまだ理解できていない初心者です。 エクセルで送り状を作成していまして、毎回「原紙」のシートをコピーして必要事項を入力し プリントアウトして使っています。 この中の項目に連番でナンバーを振る欄があり(位置は固定されています)、今現在はものすごく原始的に前のシートを確認して、ナンバーを手入力しています。 これを、原紙のシートをコピーした際に、自動でナンバーが振られるようにしたいのですが・・・ 何かいい方法はありませんでしょうか?? シート名を日付で管理し、後で確認できるよう、数か月分は保存している状態です。 また、ただの送り状なので、データベース化する必要はありません。 どなたかお知恵をお貸し下さい、よろしくお願い致します。

  • エクセルで給与支給一覧から給与明細をプリントアウトしたいのですが、どう

    エクセルで給与支給一覧から給与明細をプリントアウトしたいのですが、どうすればいいのでしょう? 縦軸に社員名(約150名)横軸には社員コード、社員名、基本給、保険料、年金、支給額等があります 一覧表をもとに社員ごとに渡す給与明細を作りたいのですが、(1)給与明細のフォーマットの作成 (2)明細に打ち出す項目をセレクトし、フォーマットに対応する場所にデータを自動出力(3)それをプリントアウトする 以上をエクセルで行いたいのですが、何を勉強しどれくらいの時間で実行できるのか? エクセルは詳しくないので、分かりやすく教えて頂ければ有り難いです よろしくお願いします

  • エクセルのシートを自動でコピー

    エクセルの2000を使用しています。 こんなことが出来るかどうか教えてください。 「原紙」というシートをコピーして自動的に6月だったら6月1日から30日までのシートを作成したいのです。シート名は6月なら20070601とか日にちのわかるような表示のシート名にしたいのです。 毎回コピーをとってシート名を変更しているのですが、これが結構手間がかかってしまします。 宜しくお願いします。

  • エクセルのマクロ

    【シート1】 見積書フォーマットを作成しており、見積発行依頼があればこのシートに記入します。 【シート2】 シート1で作成した見積データを見積No.順に保存するシート。 ここからが、質問です! ・シート1で作成した見積のデータをマクロでシート2に蓄積していきたい。 ・シート2に蓄積してある見積データの見積No.を選択すると自動的にシート1に見積内容が反映され、過去の見積書を印刷することが可能。 このようなことをしたいのですが、マクロをどう組めば良いのかわかりません。 どなたか教えてください! 仕事で困ってます・・・。

  • Excelの自動操作について

    お世話になります。 Windows7 Pro Excel2010 <現状> Excelの特定フォーマットがあり、  1.「コード」 の箇所にコードを入力   ※コードはコード一覧に記載されており、先頭のコードをコピーして貼り付け。  2.コード入力後、「データ読込」ボタンを押下   ※ODBCにてDBよりコードで抽出された情報が当該フォーマットの一覧部分に     表示されます。  3.コードをファイル名として保存。          ・          ・          ・ 上記の処理を、コード一覧の全てのコードに対して繰り返します。 <ご質問> 上記を手作業でやるとかなり時間がかかってしまいます。 上記作業を自動化したいのですが、何かよい方法はございますでしょうか。 なお、特定フォーマットは既に作成済みで、コード一覧については自動化の 方法により別シート、もしくは別Bookにしたいと思ってます。 やり方としては、コード一覧の先頭から最後までループで回しながら、コードの入力⇒ボタン押下⇒名前を付けて保存(ファイル名=コード)・・・となると思うのですが、具体的なやり方が分かりません。 Excelの機能でマクロの自動記録というものがあるようですが、今回のケースだとコード一覧のコード数が決まっている訳ではないので(今月は100でも来月は150かもしれないので)、この機能は使えないという認識です。 ご教授の程、宜しくお願い致します。

  • 見積書をエクセルで作成時に連番をふりたい。

    見積書をエクセルで作成しています、セルに見積書番号を付けたいのですが自動で連番を書き込む事はできますか? 見積書のエクセルファイルを開いたときに番号が1つ増えて番号が記入されていく様にしたいと思っています。

  • エクセルVBAでの自動ファイル保存

    エクセルVBAを使い入力したシート(ファイル)を、一定のデータが 入力された時点で指定した場所に例えば作成日をファイル名にして自動 的に保存していくようにしたいのですが、プログラムはどのようにすればいいのでしょうか? 実現させたいプログラムは、このような感じにしたいです。 1.VBAで指定シートにデータ入力→2.データ数10個で自動的に日付をファイル名にして自動的に保存→3.更に、データ10個追加された時点で前に作成されたファイルを自動で更新→4.データの入力完了で更に自動で更新 2~4のプログラムをご教授お願いします。

  • エクセルの関数を使って出来ますか?

    エクセルのVLookup関数を使って、一つのデータ一覧表のようなものから色々な帳票を作ることはやっと出来るようになったのですが、下記の作業は関数(あるいはその他のエクセルの機能)を使って出来るでしょうか。(Accessは使える環境ではありません) A. 一つのフォルダにエクセルで作った工事の見積書が沢山入っています。(ランを使って各作成者が作った見積書をそのファイルに入れるようにしています。ファイル名の付け方が各作成者バラバラでしたので、これから統一しようと思っています)。 B. 上記を検索するために、別のbookに見積書の一覧表(見積台帳のようなもの)を作って、事務員が手作業で追加しています。項目は、日付、作成者名、顧客名、工事名、金額などがあり、それぞれから検索したいと思っています。 そこで質問なのですが、 1.Bで一つの工事を検索した後、Aの中からその見積書を探し出すために、例えばBの該当の列の特定のセルをクリックすると見積書にジャンプ出来るような方法はあるでしょうか。 あるいは何か他に良い方法があるでしょうか。 2.見積書を作った後、必要な項目がBの一覧表に自動的に転記され追加されるような方法はあるでしょうか。 よろしくお願いいたします。

  • エクセルの自動保存

    エクセルの自動保存について教えてください。 ワードの場合、自動保存にすると、自動保存処理時点で、下の方に処理中であることを示すバーが現れ、何らかの原因でシステムが停止しても、自動保存した時点のワード文書が別の名前になって残っていますよね。 これに対し、エクセルでの自動保存では、設定した時間間隔が来ても特に何かを保存する動作をしていないようですし、自動保存先のファイルを開いても大変少数のファイルが残っているだけで、自動保存設定をしたすべてのブックが自動保存されているようには思えません。 これって正常にエクセルの自動保存がされているのでしょうか?

専門家に質問してみよう