VBAでfindを使った後、その行で最終列を求める方法
作りたいもの
VBA始めたての初心者です(ほかの言語は経験ありです)
組織の都合でVBAを使わなくてはいけなくなり勉強をはじめました。
今、作業場所を管理するプログラムを作っていまして、実際のプログラム自体は完成したのですが作業場所ごとにいつどのように使われたかを管理する機能をつけようと考えました。活動場所には番号が割り振られており、それがA列に一覧で書かれています。これの横に作業ごとに割り振られている管理番号を順々に連ねていきたいといった状況です。
今の状況
今この下にあるようなコードを書きました。組織の情報が含まれるので質問部分だけで申し訳ありません。ほかに必要な部分があればおっしゃってくだされば追記します。
placenumがA列に書かれている場所に振られている番号で,gronumが作業ごとに割り振られている管理番号です
実行したところ「実行時エラー'1004' アプリケーション定義またはオブジェクト定義のエラーです」
というエラーが出てきます。
エラーが出る箇所は下のコードで5行目、lastcolumn=....のところです。
コード
Visual
1 Dim i,placenum,gronum 2 '途中省略 3 With Worksheets(5) 4 Set i = .Columns(1).Find(placenum, SearchOrder:=xlByColumns).Rows 5 lastcolumn = Worksheets(5).Cells(i, Columns.Count).End(xlToLeft).Column 6 .Cells(i,lastcolumn + 1) = gronum 7 End With
お願い
現在手詰まりです....
ぜひなにか教えていただけるとありがたいです。
VBA初心者でコードが最適化されてなかったり読みにくかったりするのは申し訳ありません。
よろしくお願いします。
回答1件
あなたの回答
tips
プレビュー