Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


247 / 76735 ←次へ | 前へ→

【82157】共有ファイルの管理表に新しいレコードを書き込む
質問  Y  - 23/6/8(木) 20:56 -

引用なし
パスワード
   マクロ初心者です。
拙い文章で伝わりづらい点があるかと思いますが、ご容赦ください。

共有設定をしているエクセルの管理表に、複数人が新しい行に情報を追記していくのですが、
作業が被ったときに、誤って人の情報を上書きしてしまうことが極力ないような仕組みにしたいと思っています。
そのため、別シートに入力フォームを作り、登録ボタンをおすと管理表に追記されるというマクロをつくりました。
そこで、最初と最後に上書き保存するマクロを入れていれば、ボタンを押したタイミングで少しでも先に他の人が登録された情報が更新されるので、最終行の判定も常に最新の状態でできるかと思っていました。
ところがうまくいかず、下記に作成したマクロを記載しますので、よい方法があればご教示いただけますでしょうか。

※入力フォームがSheet1,管理表がSheet2


Sub ファイル名()

ThisWorkbook.Save

Range("B3:I3").Select
Selection.Copy
Sheets("Sheet2").Select
n = Cells(Rows.Count, "B").End(xlUp).Row + 1
Range("B" & n).Select
ActiveSheet.Paste

Sheets("Sheet1").Select
Range("B3:I3").Select
Selection.ClearContents

ThisWorkbook.Save

End Sub

ちなみに、これでうまくいかなかったので、
下記3つのボタンを設置することでなんとかいけるかためしています。。
フォームに入力する前におす上書き(更新)ボタン@
※フォームのクリアとフォームの更新情報が被らないようにするため
登録ボタンBを押す前におす上書き(更新)ボタンA
※登録が被った際に最終行を最新の状態で取得するため
9 hits

【82157】共有ファイルの管理表に新しいレコードを書き込む Y 23/6/8(木) 20:56 質問[未読]

247 / 76735 ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free