OKWAVEのAI「あい」が美容・健康の悩みに最適な回答をご提案!
-PR-
解決
済み

エクセルで自動連番

  • 困ってます
  • 質問No.242370
  • 閲覧数1717
  • ありがとう数4
  • 気になる数0
  • 回答数3
  • コメント数0

お礼率 60% (3/5)

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

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

  • 回答No.3
レベル7

ベストアンサー率 68% (11/16)

最初の設定だけ少し手順が必要ですが
それ以降はボタン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

お礼率 60% (3/5)

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

その他の回答 (全2件)

  • 回答No.1
レベル13

ベストアンサー率 68% (791/1163)

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

かなり前に同様の質問に回答した記憶があります。

『エクセルのワークシート(テンプレート)に自動連番を付けられますか』
http://www.okweb.ne.jp/kotaeru.php3?q=82921

ご参考に。
お礼コメント
rinfu

お礼率 60% (3/5)

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

  • 回答No.2
レベル7

ベストアンサー率 68% (11/16)

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

保存は、ブック自体を別名で保存ですか。
名前の付け方の規則を教えて下さい。
見積書No.の付け方も。

保存する場所は一定のフォルダですか。

良かったら回答下さい。
補足コメント
rinfu

お礼率 60% (3/5)

簡単にできますか?有り難うございます!

1.保存はブック自体を別名で保存です。
2.ファイル名は「1234大阪支店」というように、最初に見積NOで、その後ろに支店名などを付けてます。
3.フォルダは、「見積書」というフォルダに、元となる「原紙」のファイルと、同じフォルダ内に各会社名のフォルダを複数作ろうかと思っています。で、各会社のフォルダを開けると、2.の各支店の見積書のファイルがあるという感じで考えています。
4.見積書No.の付け方は、今はただ単に「0001」から初めて順番に連番でとっています。

すみません、わかりにくくて…
この説明で理解していただけましたでしょうか?
よろしくお願い致します。
投稿日時 - 2002-03-28 16:22:12
このQ&Aで解決しましたか?
関連するQ&A
-PR-
-PR-
このやり方知ってる!同じこと困ったことある。経験を教えて!
このQ&Aにはまだコメントがありません。
あなたの思ったこと、知っていることをここにコメントしてみましょう。

その他の関連するQ&A、テーマをキーワードで探す

キーワードでQ&A、テーマを検索する
-PR-
-PR-
-PR-

特集


いま みんなが気になるQ&A

関連するQ&A

-PR-

ピックアップ

-PR-
ページ先頭へ