ユーザーフォームで設定し実行で 設定と合致したロット番号をシート列から探してその行を削除とその行の上に1行挿入したいのですが

どのようにすればよいでしょうか?

回答の条件
  • URL必須
  • 1人2回まで
  • 登録:2009/01/17 16:00:26
  • 終了:2009/01/24 16:05:03

回答(1件)

id:SALINGER No.1

SALINGER回答回数3454ベストアンサー獲得回数9692009/01/17 18:01:05

ポイント60pt

前の質問から考えてたぶんExcelの質問として回答します。

情報が少ないのでどこから説明すればいいのかわかりませんが、とりあえず回答してみます。


ロット番号だけなら、ユーザーフォームを使わずinputboxで入力した方が簡単そうですが、

ユーザーフォームとして、ロット番号を入力するテキストボックス実行させるボタンを配置します。


実行ボタンには次のようなコードを実装します。

Private Sub CommandButton1_Click()
    If TextBox1.Text = "" Then Exit Sub
    'ロット番号の列
    Const rot As String = "A"
    Dim r As Range
    Set r = ActiveSheet.Columns(rot).Find(TextBox1.Text)
    If Not r Is Nothing Then
        ActiveSheet.Rows(r.Row).Clear
    End If
    Unload Me
End Sub

行を削除して1行挿入するということは、その行をクリアするのでいいと思います。

意図した動作で無い場合は教えてください。

それから、質問が漠然としているようなのでコメントをオープンされることをお勧めします。

http://q.hatena.ne.jp/

id:hide99009

早速ご回答いただきありがとうございます。質問の内容もまずく申し訳ありません。

現在生産管理計画のシートを作成しており、ユーザーフォームで各ロットごとの必要情報(機種、色、仕様、台数)を入力し転送で

エクセルのシートへ飛ばしています。その中で転送後のロットの削除の場合、ロットの追加の場合にどのようにすべきか困っています。

シートそのものはロットが1~50まで行であり、列項目に機種、色、仕様、台数、、があります。

このようなものですがご検討お願いいたします

2009/01/17 18:55:12
  • id:SALINGER
    お役にたてなくて申し訳ありませんでした。
    回答するにあたり、仕様についてもう少し照会できればお役にたてたかもしれませんが、
    回答をオープンするのにもポイントを使わせてしまうことになるので、
    回答欄では質問に対する質問はあまりしないようにしています。(回答制限も2回ですし)
    その為、コメント欄に書き込めるようにしてもらいたいと思った次第です。
    たぶん、他の回答者の方も同じように思ったと思います。

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

絞り込み :
はてなココの「ともだち」を表示します。
回答リクエストを送信したユーザーはいません