• 締切済み

UserFormを利用してシートからシートへコピー

mitarashiの回答

  • mitarashi
  • ベストアンサー率59% (574/965)
回答No.2

ほとんど自動記録したコードです。ご笑納下さい。 前提:元データはSheet1のA1からの表にある。転写先はSheet2のA1である。複写するのは値のみである。 'Module1に記述 Sub test() UserForm1.Show End Sub 'UserForm1に記述 Private Sub CommandButton1_Click() Sheets("Sheet1").Activate Range("A1").Select Selection.AutoFilter Selection.AutoFilter Field:=2, Criteria1:=DateValue(TextBox1.Text), Operator:=xlAnd Range("A1").Select Selection.CurrentRegion.Select Selection.SpecialCells(xlCellTypeVisible).Select Selection.Copy Sheets("Sheet2").Select Range("A1").Select Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks:= _ False, Transpose:=False Sheets("Sheet1").Activate Selection.AutoFilter Range("A1").Select End Sub

関連するQ&A

  • Excell(2003) VBA UserForm上のSheetの参照方法は

    Excell2003にてuserForm1にコントロールとしてスプレッドシートを載せています。 このuserForm1には、別にテキストボックス(textbox1)とコマンドボタンが二つ(commandButton1とCommandButton2)があります。 commandButton1がクリックされたとき、textbox1に入力された値をチェックしたのち、Me(userForm)上のSheet1の適当なセル(たとえばA2)にその値を入力したい。  また、CommandButton2がクリックされたときは、Sheet2のA2に入力したい。その場合Sheet2を表示する動作も必要です。  この場合 Q:本体のSheetではなく、フォーム上のSheetを指定する方法 Q:複数のSheetからなるフォーム上のspledSheetのいずれかを表示する方法  はどのようにしたら良いのでしょう。

  • ExcelデータをUserFormへ

    教えて下さい! 今、UserFormに【TextBox1】・【TextBox2】・【TextBox3】・【CommandBottum1】があります。 【TextBox3】にExcelの「No.」を入力して【CommandBottum1】(検索)をクリックしたら【TextBox1】に「商品名」・【TextBox2】に「金額」を表示させたいのですが、どのように行えばよいでしょうか? ちなみに、データは1~7行目までブランク、8行目はタイトル、9行目から始まります。     A    B    C 1 ・ ・ 8   No.   商品名   金額 9   1   ○○○○   80 10   2   △△△△   100 11   3   ××××   150 12   4   ■■■■   200  13   ・    ・        ・ 14   ・    ・        ・  ・    ・    ・       ・ ・    ・    ・       ・

  • VBA Excelのyy/mmm/ddをUserFormに入力

    また、質問させていただきます。 今、UserFormが開くと【TextBox1】【TextBox2】【TextBox3】に現在の日付が入るようになっています。   【TextBox1】(年 08)   【TextBox2】(月 03)   【TextBox3】(日 03) UserFormには、【CommandButton1】(登録)と【CommandButton2】(呼び出し)があります。 【CommandButton1】(登録)をクリックするとExcelに '08/03/03と表示されます。 ある日、データを間違えて入力してしまい【CommandButton2】(呼び出し)をクリックし修正する時にExcelに登録している日を【TextBox1】(年 08)【TextBox2】(月 03)【TextBox3】(日 03)と自動的に入力することは出来るでしょうか? 宜しくお願いいたします。

  • UserFormにテキストボックスを作成してその内容をExcleに反映

    初めまして。ExcelのVBAをチャレンジしています。 初心者なので良くわからないため質問させて頂きました。 今、商品登録用のユーザーフォームを作成しています。 ユーザーフォームには TextBox1=「商品No.」 TextBox2=「商品名」 TextBox3=「単価」 TextBox3=「仕入先」 CommandButton1=「登録」 CommandButton2=「終了」 があります。 「商品No.」,「商品名」,「単価」,「仕入先」を入力し、「登録」をクリックしたらExcelに横一列(参考1)に反映させ、入力・登録を繰り返し行い(商品が入ったら随時入力)下に追加していきたいのですが、どの様にすれば宜しいでしょうか? <参考1>   A    B   C   D 1 商品No. 商品名 単価 仕入先 2 001   ○○○ 10円 △△  3 ・     ・   ・  ・ 4 ・     ・   ・  ・ 5 ・     ・   ・  ・

  • (EXCEL)カレンダーコントロールについて

    (EXCEL2002) カレンダーコントロール、または万年カレンダーをシート上に作成してあり、カレンダーの日付をクリックするとVBAのUserForm1が表示されて UserForm1にはTextBox1(商品名を入力します)とTextBox2(数量を入力します)とCommandButton1(登録と記入してあります)があり、各テキストボックスに入力して登録を押すと、別シートに(日付(A列)は記入してあります)B列、C列にクリックした日付の行に記入されるようにできないでしょうか?    A   B    C  ------------ 1 | 日付 商品名 数量 2 | 1 3 | 2

  • [EXCEL VB] UserForm内でデータクリアー

    EXCEL VBで教えてください。 UserForm内に[TextBox]と[CommandButton]があります。 [CommandButton]を押下すると[TextBox]に表示されている データをClearする関数(モジュールシートの書き方)を 教えてください。

  • excel vba についてお聞きします

    excel vba についてお聞きします userformを使ってworksheetにデータを登録するといった事をしたいと考えております userformにはtextboxとcommandbuttonを配置 commandbuttonを押したらtextboxに入力した内容をworksheetに登録させる 同時にworksheetのA列には日付を登録 日付は登録をするその日付を反映させる 同じ日付があった場合は日付の登録はせずにその日付の行、B→C→Dと順に textboxのデータの登録だけをする。 日付の入るA列以外にデータが入る事になります また、textboxの内容が既にworksheetに登録済の場合 『既に登録済みです』といったメッセージを出すようにもしたいのです ご教授の程、よろしくお願いします。

  • excelのsheetを表示しないでUserFormで更新

    今日 2個目の教えてです。 一つ目もまだわからない状態なんですが お分かりの方お教え下さい。 excelを起動するとUserFormのみが起動して(excelシートは開かない)textbox1にコードを入力すると excelシートからtextbox2にデータをひっぱってきます。 そのtextbox2のところを別のデータを入力してコマンドボタンを押すと シートの値が置き換わるようにしたいのですがお教え願えないでしょうか。

  • エクセルのコピーについてご教示下さい。

    シートAのB4に日付が入っています。 C5からE10までのデータをシートBのD列に入ってる同じ日付の横に ボタンひとつでコピーするようにしたいのですが出来るでしょうか。 例えば、シートBのD20に同じ日付があれば、ボタンを押せばE21からF25にコピーするようにしたいのです。 ただ、同じ日付がない場合もありますが、その時はコピーはしません。 どなたか、よろしくお願いいたします。

  • excelでボタン一つでシートからシートへのコピーの方法。

    例) シート1に日付と商品名と単価と個数、それに特別の項目があります。 下図のような表。 =============== 日付 商品 単価 個数 4/1   A  100  1 特別 4/1    D   0   3                ←1行空いてます。 4/2    B   120   2 4/2    C   130   1                ←1行空いてます。 4/3    A   120   1 4/3    C   130   3 特別 4/3   D   0    5                ←1行空いてます。 4/4  定休日 : : 4/30 =============== このような表があるとします。 これをボタン一つでシート2にコピーしたいのです。 (簡単に言えばシート1がデータ。シート2が印刷用です。) <条件> シート2のセルの大きさは変えられませんが、それ以外はOK シート2にコピーする際に日付指定が出来ること。(1日から5日までのデータを印刷するなど。) 長々とした文になりましたが、よろしくお願いします。 また、わからないことがあれば補足いたします。