[[20200511124454]] 『更新前と更新後の違いについて』(桜) ページの最後に飛ぶ

[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]

 

『更新前と更新後の違いについて』(桜)

データの更新前と後で何が増えたのかMsgboxに表示することは
できるのでしょうか?

sheet1の最後の行の下にデータが追加されていきます
追加されたものが分かるように、例えばB列のセルの値"かきく"
をMsgboxに表示させたいです

 (sheet1更新前)
  A B  C
 1  あ
 2  い
 3  う
 4  え 

 (sheet1更新後)
  A B  C
 1  あ
 2  い
 3  う
 4  え 
 5  か
 6  き
 7  く

< 使用 Excel:Excel2019、使用 OS:Windows10 >


 下に追加なら、入力されている1番下のセルか、その次のセルに色をつけるとか、
 それらセルの隣に目印を付けておけば良いんじゃないですかね?
(BJ) 2020/05/11(月) 15:02

行ってみましたがダメみたいです

分からないのは、
・更新前と更新後の最後の行をSstする方法
更新前はB4となると思います、更新後の最終行は更新前と同じ構文で
大丈夫なのでしょうか?

・Setしたものをループさせる方法
↓これをループさせるにはどうのような構文になるか教えてください

 MsgBox Range("B5") & Range("B6") & Range("B7")

(桜) 2020/05/11(月) 17:04


更新前の最終行とは?
bookを開いた瞬間?
SheetをActiveにした瞬間?

かを入力したタイミングでは、更新前はB4
きを入力したタイミングでは、更新前はB5
くを入力したタイミングでは、更新前はB6
更新前の最終行は流動的。したがって要件が不明瞭

(mm) 2020/05/12(火) 09:25


>更新前の最終行とは?

 ボタン(フォームコントロール)をクリックした瞬間の最終行です。
 bookを開いた瞬間やSheetをActiveにした瞬間はsheet1にデータをセットできて
 いない場合があります
 ボタンをクリックした時は追加されておりません

 更新前の最終行(ボタンをクリックした瞬間)
 ↓
 追加
 ↓
 更新後の最終行(別マクロを実行した瞬間)

拙い説明でご迷惑をおかけしてます
他に不明な点がありましたらご連絡ください
(桜) 2020/05/12(火) 09:51


'事前に作業用シートを作成(シート名="作業用")

Sub ボタン1_Click() 'ボタンにマクロ登録

  Sheets("作業用").Range("A1").Value = Sheets("Sheet1").Range("B" & Rows.Count).End(xlUp).Offset(1).Address(0, 0)
  Application.DisplayAlerts = False
  ThisWorkbook.Save
End Sub

'以下、別マクロ内の最後に追記
Dim comm As String, c As Range
If Sheets("作業用").Range("A1").Value <> "" Then
For Each c In Sheets("Sheet1").Range(Sheets("作業用").Range("A1").Value & ":" & Sheets("Sheet1").Range("B" & Rows.Count).End(xlUp).Offset(1).Address(0, 0))
comm = comm & c.Value
Next c
MsgBox comm
End If
Sheets("作業用").Range("A1").Value = ""
Application.DisplayAlerts = False
ThisWorkbook.Save

(mm) 2020/05/12(火) 10:39


mmさん、外出中なので後で確認させていただきます
取り急ぎご連絡致します
(桜) 2020/05/12(火) 14:35

mmさん、遅くなり申し訳ございません
ボタンをクリックした時点の最終行を別シートに記録するとは思いつきませんでした
他にもやってみます、ありがとうございました。

(桜) 2020/05/14(木) 15:03


コメント返信:

[ 一覧(最新更新順) ]


YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki. Modified by kazu.