Excelのユーザーフォームを使用して実際にデータを入力することにより、ワークシートに入力されるデータを転送するためにコードを編集しようとしています。複雑に聞こえるかもしれません。つまり、ユーザー フォームにデータを入力し、ユーザー フォームに挿入された「コマンド ボタン」をクリックすると、テーブルの次の空の行にデータが配置されます。
set ws = DataTable, ws is Dim as a worksheet. テーブルが何であるかは知っていますが、DataTable が何であるかはわかりません。また、DataTable とデータのテーブルに違いがあるかどうかもわかりません。最初の行を列見出し (フィールド 1、フィールド 2、およびフィールド 3) としてデータのテーブルを作成し、単純にするために 5 つの行を含めました。ws = Table と Dim ws AS WorkSheet と Dim nextRow を Long に設定しました。ユーザーフォームが表示され、閉じる/キャンセルするコマンドボタンが機能します。ただし、ユーザー フォームに 3 つのデータを入力し、コマンド ボタンをクリックしてデータを入力/保存すると、エラーが発生します。
実行時エラー 91: オブジェクト変数またはブロック変数が設定されていません
「デバッグ」を選択した場合、黄色で強調表示されているコード行は次のとおりです。
nextRow = ws.Cells(Rows.Count,1).End(xlUp).Offset(1,0).Row
青くなるまで検索しました-VBAを学んでいるだけで、何が問題なのかを解釈するのに助けていただければ幸いです。ほとんどの場合、Table vs DataTable の問題です - よくわかりません。Excel の DataForms は柔軟性に欠けすぎて使用できません。適切なオプションだけが選択されるようにするには、「コンボ ボックス」を使用する必要があります。
参考にするのに有益な他のウェブサイトの提案または推奨事項に感謝します。受講した優れたオンライン VBA クラスを推奨できる人はいますか? 「暗い場所での撮影」よりも推奨事項を優先します。最高の週の願い!!