
在南极散步时的hy在想什么
这个家伙什么都没有留下。
问题列表
Excel VBAに関する質問です。\r\n内容は\r\nユーザーフォームのテキストボックスに入力した内容をワークシート”Sheet1”に列方向にデータ移行したいのですが、もうわからなくなりました。\n下記に入力したコードを書いています。\r\n正直にいうと根本的に間違っています。わかる方お願いします。\r\n起こっている現象\r\n①最終列の取得にも失敗しています。成功していたら登録№が3になります。\r\n②tx2から6まで入力してコマンドボタンを押すと、Sheet1の最終列までデータが入ります。\r\n下のコードでは標準モジュールを使っていますが、ユーザーフォームのコマンドボタンクリックで対応して頂いても問題ありません。\r\nよろしくお願いいたします。\r\n\r\nユーザーフォームコード\r\nPrivate Sub CommandButton1_Click()\r\ntest '標準モジュールで対応’\r\nEnd Sub\r\nPrivate Sub SpinButton1_SpinUp()\r\nDim lastrow As Long\r\nlastrow = ThisWorkbook.Worksheets(\u0026quot;Sheet1\u0026quot;).Cells(1, Columns.Count).End(xlToRight).Column\r\ntx1.Value = Application.Min(tx1.Value + 1, lastrow - 1)\r\nEnd Sub\r\n\r\nPrivate Sub SpinButton1_SpinDown()\r\ntx1.Value = Application.Max(tx1.Value - 1, 1)\r\nEnd Sub\r\nPrivate Sub UserForm_Initialize()\r\n\r\nDim lastcol As Integer\r\nDim i As Integer\r\nDim ws As Worksheet\r\n\r\nSet ws = ThisWorkbook.Worksheets(\u0026quot;Sheet1\u0026quot;)\r\nlastcol = ws.Cells(1, Columns.Count).End(xlToRight).Column\r\ntx1 = ws.Cells(1, lastcol) + 1\r\nEnd Sub\r\n\r\n標準モジュールコード\r\nSub test()\r\n\r\nDim i As Long\r\nDim lastcol As Long\r\nDim ws As Worksheet\r\n\r\nSet ws = ThisWorkbook.Worksheets(\u0026quot;Sheet1\u0026quot;)\r\n\r\nWith ws\r\nlastcol = ws.Cells(1, Columns.Count).End(xlToRight).Column + 1\r\n \r\n For i = 2 To lastcol\r\n\r\n .Cells(1, i).Value = UserForm1.tx1.Text\r\n .Cells(2, i).Value = UserForm1.tx2.Text\r\n .Cells(3, i).Value = UserForm1.tx3.Text\r\n .Cells(4, i).Value = UserForm1.tx4.Text\r\n .Cells(5, i).Value = UserForm1.tx5.Text\r\n .Cells(6, i).Value = UserForm1.tx6.Text\r\n \r\nNext i\r\nEnd With\r\nEnd Sub