1 名前:1000 [2020/05/10(日) 13:43:45 ID:Nkoph0aj.net] ExcelのVBAに関する質問スレです コード書き込みや作成依頼もOK ※前スレ Excel VBA 質問スレ Part65 https://mevius.5ch.net/test/read.cgi/tech/1584430040/ ※デフォルト設定
666 名前:582 mailto:sage [2020/06/09(火) 08:27:55.73 ID:w8zDheKG.net] >>633 日本人にとってもコードが読みにくくてかなわん。
667 名前:デフォルトの名無しさん mailto:sage [2020/06/09(火) 09:00:21.92 ID:khiSZY25.net] >>633 会社で使うなら社内の自分より詳しい人に相談してみ
668 名前:デフォルトの名無しさん mailto:sage [2020/06/09(火) 09:06:51.24 ID:r/wULa9J.net] 個人的には日本語プロシジャー名好き 処理名だと分かりやすい
669 名前:デフォルトの名無しさん mailto:sage [2020/06/09(火) 09:38:40.07 ID:rQkYVq9m.net] 困った時のローマ字 Sub CSV_no_deTa_wo_rodo_suru()
670 名前:デフォルトの名無しさん mailto:sage [2020/06/09(火) 09:49:38.68 ID:r/wULa9J.net] そもそもシート名で日本語使ってるからね 気にするならそこからやらないとね
671 名前:デフォルトの名無しさん mailto:sage [2020/06/09(火) 09:56:55.81 ID:LXNCuYlO.net] >>633 単純に一つの言語で統一した方が読みやすい これは一般的な文章でも感じられると思う 逆にコメント等を日本語にすることで注釈として意識させることが出来る 自分は実装には使わないテスト用のメソッドをを日本語名にする事はあるよ アメリカに送ったら云々は条件が特殊だし、 日本語コメントも文字化けするんだから関係ないだろと思う
672 名前:デフォルトの名無しさん mailto:sage [2020/06/09(火) 10:05:30 ID:FZrbGc0Z.net] システムとして表示やコンパイルが可能かってのと、それを読む人間が外国語を理解できるかはまた別の話 とりまファイル名やワークシートに入ってるデータが日本語なら何も気にしなくていいってことよ そもそも半角文字だって国によって割り当てが違うんだし
673 名前:デフォルトの名無しさん mailto:sage [2020/06/09(火) 10:25:08.00 ID:LXNCuYlO.net] いずれにしても海外環境で動くかって話になると、 関数名ひとつの話じゃないってことだな
674 名前:デフォルトの名無しさん mailto:sage [2020/06/09(火) 11:06:11 ID:GhLF46O3.net] >>642 自分はプロシージャ名だけでなく変数名にもときどき使ってます。 変数名を横文字で考え付くのが面倒ってこともありますが。 行や列の位置を示す変数に tate yoko の後は 行 列 縦 横 など。
675 名前:デフォルトの名無しさん mailto:sage [2020/06/09(火) 12:07:12.66 ID:GJCBYo9K.net] 賛否両論(少し否優勢)な感じね 賛の中でもプロシージャ名、関数名、定数変数名のどこまで日本語が許されるかも派閥次第か
676 名前:582 mailto:sage [2020/06/09(火) 12:11:23 ID:w8zDheKG.net] iとかなら良いけど変数の型とかプロシージャなのか区別出来る名前になってないと最悪。 で、日本語の名前つけてるのにそんなのが多い。
677 名前:デフォルトの名無しさん mailto:sage [2020/06/09(火) 12:33:34.60 ID:RJ9Fxau+.net] >>639 ありがとうございます
678 名前:デフォルトの名無しさん mailto:sage [2020/06/09(火) 12:34:58.09 ID:LXNCuYlO.net] 変な事せずに命名規則に従った方がいいと思うけどね メシマズ嫁と同じ思考回路だぞ
679 名前:デフォルトの名無しさん mailto:sage [2020/06/09(火) 14:16:42.79 ID:VHdLMKHt.net] すみません。どなたか詳しい方、ご指導願います。 データ計算をVBA作成しようとして悩んでいます。 リストボックスにある地名を選択して、テキストボックス1に数字を 入力したらテキストボックス2に対応した数値を出したいのですが 上手く書けません。 データシートのA列(A2からA300)には地名、横軸(B1からBG1)には整数値(50ずつの数値)があり 地名と整数値の交点には、それぞれ対応した金額が入っています。 またリストボックスの地名は「地名」として別シートを作成しています。 説明方法が悪くて申し訳ないのですが記述の方法の 解説を宜しくお願いします。
680 名前:デフォルトの名無しさん [2020/06/09(火) 14:31:54.35 ID:ksQUvwBH.net] h,vlookupじゃダメなんですか?
681 名前:デフォルトの名無しさん mailto:sage [2020/06/09(火) 14:36:44.80 ID:LXNCuYlO.net] どこまで書けてて、どこから分からないの?
682 名前:デフォルトの名無しさん mailto:sage [2020/06/09(火) 14:38:50.34 ID:XR5JAco5.net] XY座標のセル表示して終わりじゃないなら ピボット勉強した方が良いと思う
683 名前:デフォルトの名無しさん mailto:sage [2020/06/09(火) 14:49:37.66 ID:VHdLMKHt.net] 651です。 Private Sub ListBox1_Change() ListBox3.Clear Select Case ListBox1.Text Case "東京都" ListBox3.List = Worksheets("データ").Range("A2:A8").Value (略) End Select With ListBox3 .ColumnHeads = False .ColumnCount = 1 .ColumnWidths = "40;50;50" .Font.Name = "Meiryo UI" .Font.Size = 11 End With End Sub Private Sub TextBox2_AfterUpdate() Dim TextBox2 As Range Dim TextBox3 As Range Set TextBox2 = Worksheets("データ").Range("A2:A13") Set TextBox3 = TextBox2.Find(What:=TextBox2.Value, LookAt:=xlPart) If Not TextBox3 Is Nothing Then 'ヒットした値をテキストボックスにセット TextRegion.Value = Worksheets("データ").Cells(TextBox3.Row, TextBox3.Column + 8).Value End If End Sub なんか変です。。。
684 名前:デフォルトの名無しさん mailto:sage [2020/06/09(火) 14:54:09.61 ID:VHdLMKHt.net] 651です。 たぶんツッコミどころ満載です。 交点のセレクトできていません。
685 名前:デフォルトの名無しさん mailto:sage [2020/06/09(火) 15:51:31.81 ID:Hq8JX0Tk.net] なぜ段階を踏んで自分でテストモデルを組んでみないのかが疑問だわ 初心者の頃も含めてその程度の内容で誰かに聞いたことすらないわ
686 名前:デフォルトの名無しさん mailto:sage [2020/06/09(火) 15:53:54.04 ID:Hq8JX0Tk.net] 1.リストボックスで選択してボタン押して他のフォームで項目表示できるか 2.テキストボックスに書き込んでボタン押して他のフォームのテキストボックスに表示できるか 3.リストボックスとテキストボックスで選択と書込をして同じフォーム上のテキストボックスに対応した数字を出せるのか とかとか
687 名前:デフォルトの名無しさん [2020/06/09(火) 16:19:22.27 ID:ksQUvwBH.net] マクロの記録使うのはいいけど その結果の意味ぐらい調べようよ ググらなくてもF1キー押せば表示されるからさ
688 名前:デフォルトの名無しさん mailto:sage [2020/06/09(火) 16:24:07 ID:LXNCuYlO.net] >>657 下の関数内で使ってる変数名を具体的に書いてみたらどうかな TextRangeForSearchTargetみたいな文章風でもいいから
689 名前:デフォルトの名無しさん mailto:sage [2020/06/09(火) 17:05:07.59 ID:/5vAUGTr.net] ユーザーフォームに https://www.s-projects.net/degree-position.html のサイトにあるような 位置度の算出を丸々搭載したいけど 素人にゃ厳しいですかね?
690 名前:デフォルトの名無しさん mailto:sage [2020/06/09(火) 17:28:45 ID:FZrbGc0Z.net] >>663 簡単
691 名前:デフォルトの名無しさん mailto:sage [2020/06/09(火) 17:40:53.94 ID:Hq8JX0Tk.net] ユーザーフォーム使ってTextBox1とTextBox2に数字いれてTextBox3に足し算の結果だすような基本をまず調べればあとは適当にぐぐりゃ分かるわな 計算途中も変数いちいち宣言して代入していくといいわ 自分で何やってんのか見失わないようにするため Sub testttt() Dim drawingX As Double: drawingX = 2 Dim drawingY As Double: drawingY = 2 Dim realX As Double: realX = 2.1 Dim realY As Double: realY = 2.1 Dim diffX As Double: diffX = realX - drawingX Dim diffY As Double: diffY = realY - drawingY Dim ResultPosition As Double: ResultPosition = Sqr(diffX * diffX + diffY * diffY) * 2 MsgBox ResultPosition End Sub
692 名前:デフォルトの名無しさん mailto:sage [2020/06/09(火) 17:54:43.46 ID:AbQV9kr1.net] Private Sub TextBox1_Change() 'Xの図面寸法 TextBox3 = Val(TextBox1.Value) - Val(TextBox2.Value) End Sub Private Sub TextBox2_Change() 'Xの測定値 TextBox3 = Val(TextBox1.Value) - Val(TextBox2.Value) End Sub Private Sub TextBox3_AfterUpdate()'Xのズレ TextBox3 = Val(TextBox1.Value) - Val(TextBox2.Value) End Sub Private Sub TextBox4_Change()'Yの図面寸法 TextBox6 = Val(TextBox4.Value) - Val(TextBox5.Value) End Sub Private Sub TextBox5_Change() 'Yの測定値 TextBox6 = Val(TextBox4.Value) - Val(TextBox5.Value) End Sub Private Sub TextBox6_Change() 'Yのズレ TextBox6 = Val(TextBox4.Value) - Val(TextBox5.Value) End Sub Private Sub TextBox7_Change() '位置度最難関 TextBox7 = Val(Sqr(TextBox3.Value) ^ 2) + Val(Sqr(TextBox6.Value) ^ 2) * 2 End Sub tBox6.Value) ^ 2) * 2 End Sub 1〜6まではぐぐったらなんとかできた あとは7… >>665 ぐぐるより難しそうで無理す
693 名前:デフォルトの名無しさん mailto:sage [2020/06/09(火) 17:58:28.74 ID:AbQV9kr1.net] ああ、最後に変なコピペが混じってる 3と6にも多分式を入れないとだめですよね恐らく
694 名前:デフォルトの名無しさん mailto:sage [2020/06/09(火) 18:02:48.17 ID:AbQV9kr1.net] いや違う、むしろ7に入れずに3と6っぽい? そもそもド素人にはやはり厳しいね 頑張りますわ
695 名前:デフォルトの名無しさん mailto:sage [2020/06/09(火) 18:44:30.51 ID:AbQV9kr1.net] うおぉ、浮動小数点かこりゃ? どっかでroundで四捨五入せんといかんのね 1人であたふたすまん ほんとムズい
696 名前:デフォルトの名無しさん mailto:sage [2020/06/09(火) 19:24:04.57 ID:Hq8JX0Tk.net] Changeイベントなんか使うから難しくなるわけで・・・・ そのサイトにあるように、ボタン押して計算するようなもの作りたいんだろ? ならズレ角度抜きで、テキストボックス7個作って ボタン押すと上の4個から数値拾ってきて下の3個に計算結果を入れるっていうな イベント系はCommandButton1_Click()だけでいいはずだぞ
697 名前:デフォルトの名無しさん mailto:sage [2020/06/09(火) 19:44:15.62 ID:Hq8JX0Tk.net] Private Sub CommandButton1_Click() Dim drawingX As Double: drawingX = TextBox1.Value Dim drawingY As Double: drawingY = TextBox2.Value Dim realX As Double: realX = TextBox3.Value Dim realY As Double: realY = TextBox4.Value Dim diffX As Double: diffX = realX - drawingX Dim diffY As Double: diffY = realY - drawingY Dim ResultPosition As Double: ResultPosition = Sqr(diffX * diffX + diffY * diffY) * 2 TextBox5 = ResultPosition End Sub https://i.imgur.com/yhMCwtL.jpg 位置度だけだけど。 テキストボックスはIMEModeOffにしておく
698 名前:デフォルトの名無しさん mailto:sage [2020/06/09(火) 19:49:22 ID:0Bu4FXEm.net] なんでユーザーフォームってクソダサなんだろな 色変えられるんだしMicrosoftももうちょい気遣ってくれてもいいのにな
699 名前:デフォルトの名無しさん mailto:sage [2020/06/09(火) 20:04:52.19 ID:PO2SY+XL.net] >>671 天才ですか、、 何も知らん癖に自動にしたいかなぁと 思って検索してパクりまくって作ってましたわ ズレ量も欲しいからとせっせと 小数点も3桁以上は四捨五入したく 1〜4までは意味も分からずとりあえず ちゃんと挙動してるかなぁレベル アドバイス貰う以前の素人レベルだからスクショですんません 原理すらわかってない https://i.imgur.com/0iPDqgX.jpg https://i.imgur.com/ksEqFVN.jpg
700 名前:582 mailto:sage [2020/06/09(火) 20:10:52.53 ID:w8zDheKG.net] >>666 そういう書き方せずに>>665 を具体的な値の部分は削除してまず関数化する。 Function GetResultPosition(drawingX As Double, drawingY As Double, realX As Double, realY As Double) As Double Dim diffX As Double: diffX = realX - drawingX Dim diffY As Double: diffY = realY - drawingY Dim ResultPosition As Double: ResultPosition = Sqr(diffX * diffX + diffY * diffY) * 2 GetResultPosition = ResultPosition End Function 初心者を脱っしていれば、点はユーザー定義にしてると思うけど、まあこんな感じ。
701 名前:デフォルトの名無しさん mailto:sage [2020/06/09(火) 20:19:17 ID:OFRsK1Sh.net] いつまで素人素人言い訳してくれくれする気だ
702 名前:582 mailto:sage [2020/06/09(火) 20:19:48 ID:w8zDheKG.net] 次にTextBoxの値を関数い代入する。 なお、TextBoxの名前もそれっぽく変えておく。 Sub test() Dim drawingX As Double Dim drawingY As Double Dim realX As Double Dim realY As Double drawingX=txtDrawingX.Value drawingY=txtDrawingY.Value realX=txtRealX.Value realY=txtRealY.Value txtResult.Value=GetResultPosition(drawingX, drawingY, realX, realY) End Sub
703 名前:デフォルトの名無しさん mailto:sage [2020/06/09(火) 20:28:43.03 ID:PO2SY+XL.net] ごめんスクショの所も直しきれてなかったし初心者を脱してないレベルだから 調子乗って挑戦しようと思ったのが間違い 測定値はどこまで小数点書こうが3桁で四捨五入 ズレ量も四捨五入された3桁で表示 四捨五入された3桁のズレ量同士で計算されて 位置度も3桁で四捨五入されてフィニッシュ やろうとした事が多すぎました 普段のエクセルのSQRT関数入れたツールか 関数電卓で断念します クレクレとかじゃなく、助言みんなありがとうです
704 名前:582 mailto:sage [2020/06/09(火) 20:51:16.65 ID:w8zDheKG.net] >>677 四捨五入なんて最後で良いじゃん。 ResultPositionを四捨五入して返すだけだと思うが。 入力の見た目も四捨五入したいならそれぞれでやりゃ良いし。 どっちにしろ、四捨五入なんて考えずに作って、出来てから考えた方が良いぞ。
705 名前:デフォルトの名無しさん mailto:sage [2020/06/09(火) 21:14:50.07 ID:PO2SY+XL.net] >>678 どうも…事情がありまして ズレ量と位置度を両方記入する必要があるから計算を合わせたいのです そうしないと記入したズレ量と数値の計算が違ってくるので なので普段はExcel関数ツール作ってで計算させてます (名称はセル番地) まず小数点7桁ぐらいで出力されてきやがるズレ量をRound関数で全て小数点3桁にする ↓ 小数点3桁同士で位置度の計算をさせる =if(位置度="","",SQRT(SUMSQ(X実測値-X図面寸法,Y実測値-Y図面寸法))*2) ↓ 最後に出た位置度も小数点3桁にする =if(位置度="","",Round(位置度,3) ↓ 位置度とズレ量を小数点3桁まで記入 現状これが自分の最善だったので…
706 名前:デフォルトの名無しさん mailto:sage [2020/06/09(火) 21:21:13.62 ID:PO2SY+XL.net] 間違えた 小数点3桁同士で位置度の計算をさせる =if(Xの実測値="","",SQRT(SUMSQ(X実測値-X図面寸法,Y実測値-Y図面寸法))*2) 2つ目はこうやった
707 名前:582 mailto:sage [2020/06/09(火) 21:24:41.76 ID:kJxmgxZ3.net] >>679 いやいや、そういう話じゃなくてね、そんなもんは最後に入れれば良いでしょ。 先ずは四捨五入無しで動くところから。 あとTextBoxとかイベントとかも後でいいんだよ。
708 名前:デフォルトの名無しさん mailto:sage [2020/06/09(火) 21:29:48.33 ID:PO2SY+XL.net] >>681 ごめん、ほんと初心者以前知識すらない関数だけで凌いできたレベルでちょいネットで調べりゃ出きるかなと思ったらもう手つけられんのですわ クレクレ以前の問題で それでも >>671 のは頂こうと思うとります
709 名前:デフォルトの名無しさん [2020/06/09(火) 21:37:07.98 ID:/5vAUGTr.net] そういう業務と無縁だからエクセル関数で計算とかほとんど知らん俺からすると そんな数式ほんとかよと思ったら ほんとだった それはそれでよく考えたもんだなおい 測定をする?部署は凄いね
710 名前:デフォルトの名無しさん mailto:sage [2020/06/09(火) 21:38:09.42 ID:khiSZY25.net] >>682 悪いことは言わんから早いうちに転職しなされ こういう仕事向いてないよ
711 名前:デフォルトの名無しさん mailto:sage [2020/06/09(火) 21:41:34.61 ID:hYyeR2h+.net] プログラミングの基本も知らないレベルの人がコピペでツール作って業務に使用するって大丈夫なのか?
712 名前:デフォルトの名無しさん mailto:sage [2020/06/09(火) 21:45:05.79 ID:FZrbGc0Z.net] 少数以下の計算結果を同じにするのは、Excelでは一番難しい分野の一つ たとえば銀行の利息とか、素人が作った数式だとまず合わない
713 名前:デフォルトの名無しさん mailto:sage [2020/06/09(火) 21:56:09.99 ID:khiSZY25.net] この先も苦労するだろうし、もし重大な問題が起きた場合周りが迷惑するんだよな
714 名前:デフォルトの名無しさん [2020/06/09(火) 21:59:00.39 ID:I+ooWyO2.net] 馬鹿に教えても何かあるとまた頼るだけ 馬鹿に教えてもろくなことにならんぞ その場で形だけ低姿勢にしてるだけで本音は違うからな
715 名前:デフォルトの名無しさん mailto:sage [2020/06/09(火) 22:01:59.19 ID:0Bu4FXEm.net] より正確な計算するのってcurrency型だっけ? double使うより
716 名前:デフォルトの名無しさん mailto:sage [2020/06/09(火) 22:10:25 ID:OFRsK1Sh.net] 向き不向き以前に学習する気が無い
717 名前:デフォルトの名無しさん mailto:sage [2020/06/09(火) 22:26:28.10 ID:1rtAHViu.net] 少数の計算はどの言語でやってもやっかい なので普通は名の知れたライブラリを呼ぶ 自分で書くのは最後の手段
718 名前:デフォルトの名無しさん [2020/06/09(火) 22:27:34.95 ID:I+ooWyO2.net] >>689 違いがわからない馬鹿はコメントしなければ良いのに
719 名前:デフォルトの名無しさん mailto:sage [2020/06/09(火) 23:36:40.87 ID:KturEXme.net] スレチかもしれないけど他の方法も・・ >>653 VBA使わずにフォームコントロールのリスト選ぶだけで表示 https://i.imgur.com/SHqygJ1.png >>663 HTAのVBSciptで https://i.imgur.com/rvwycaA.png
720 名前:デフォルトの名無しさん [2020/06/10(水) 01:20:22 ID:aAKpfJRW.net] 学べない俺には刺さるわ、言い訳だが… これだけは!っていう心臓部になるコードだけはネットで見つけて何とか繋げて作る どこ弄ればどう変わるかだけ後で見ても絶対わかるようにコードより丁寧なコメントを残す それさえ完成するともう安心して終わり あとは簡単な挙動はテンプレがネットにあるからひろってくる ユーザーフォームのボタンはで黄緑、黄色、水色を多用する プロシージャ当てはめるだけで職場じゃパソコンの先生扱い android端末やiPhoneの扱いならなぁ 近所でおばちゃまたちのスマホ教室を副業でやってるくらい詳しいのにっくそっ!
721 名前:デフォルトの名無しさん mailto:sage [2020/06/10(水) 05:20:40.78 ID:9S1ZPIsx.net] 趣味や勉強中ならわかるが仕事頼んだら理解してないネットのコピペもって来るような人にはもう頼めんだろ
722 名前:582 mailto:sage [2020/06/10(水) 06:37:22 ID:h6488s/K.net] >>682 そういう言い訳は良いから。 いつも思うことだが初心者はわざわざ問題を難しくする。 先ずは>>671の最後の TextBox5 = ResultPosition を TextBox5 = Round(ResultPosition,3) にするだけだ。 それに、TextBox1~4の3桁をど一にかしたいなら>>676を利用した方が簡単。 それぞれのchangeイベントで自分を3桁にした後で>>676のtest呼び出すだけ。
723 名前:デフォルトの名無しさん mailto:sage [2020/06/10(水) 08:27:35.36 ID:ZDdhDfGU.net] あいつは禿げたおっさんで体臭臭そうだけど、俺からみるとなかなか頑張ってると思うぜ 簡単な書籍買って一冊読んである程度まとまった知識得るといいわ 一年後にはここでふんぞりかえってレスしてると思うね
724 名前:デフォルトの名無しさん mailto:sage [2020/06/10(水) 16:06:12.58 ID:alb8qwRt.net] 買った本開いたの最初だけで、今は枕になってるぞ
725 名前:デフォルトの名無しさん mailto:sage [2020/06/10(水) 16:45:17.85 ID:zxOaMDTC.net] >>698 メルカリへ
726 名前:デフォルトの名無しさん mailto:sage [2020/06/10(水) 17:48:53.56 ID:GhRRuhdi.net] >>698 くれ
727 名前:デフォルトの名無しさん mailto:sage [2020/06/10(水) 20:30:18 ID:O8L9L3qt.net] >>696 本当にありがとう。。言い訳やめて素直に全部頂いたら完成しました… 正直コードは何も理解しとらんですが… https://i.imgur.com/guqSVVU.jpg
728 名前:デフォルトの名無しさん mailto:sage [2020/06/10(水) 20:43:31 ID:O8L9L3qt.net] なるほど、普段XとYの図面値が両方0な事も結構多い そういうときはTextboxの1と3(XとYの図面値)のValueを0に設定しとけばいいのか こういう事を本で基礎から学ばずスマホで調べて小ずるく終わらせるのが自分の学習性の無さ 、本当に駄目ですわ… 教えてくれた人への感謝と自分への落胆が酷い もう生産部署に飛ばしてくれよ
729 名前:デフォルトの名無しさん mailto:sage [2020/06/10(水) 21:27:00 ID:r05FbU6w.net] フォームボタンを置いてそのシートで矢印押し続けるとセル移動が飛び飛びになるんだけど対処法ありますか? とりあえずマクロ登録した図形にしたら発生しなくなったけど押した感ないから気持ち悪い
730 名前:デフォルトの名無しさん mailto:sage [2020/06/10(水) 21:32:19 ID:2cEQGA3C.net] >>701 理解する気が無いからな
731 名前:デフォルトの名無しさん mailto:sage [2020/06/10(水) 21:34:24 ID:2cEQGA3C.net] >>703 本当に飛び飛びになってるかカーソル位置をdebug.printとかで確認してみろ
732 名前:デフォルトの名無しさん mailto:sage [2020/06/10(水) 22:01:15.35 ID:zJ0W6AlK.net] >>704 そう、それがあかんわ ちょいちょいと細かなとこばっか弄るくらいしかできない とりあえず位置度の数値をアクティブセルに反映されるボタンを追加して完成です 失礼しました本当に
733 名前:デフォルトの名無しさん mailto:sage [2020/06/10(水) 23:43:02.56 ID:r05FbU6w.net] >>705 もちろん実際に移動が飛ぶわけではありません 表示上の問題です
734 名前:デフォルトの名無しさん [2020/06/11(木) 02:06:11.07 ID:l/gRHUK3.net] 馬鹿はこうやって厚かましく聞きだそうとする
735 名前:デフォルトの名無しさん mailto:sage [2020/06/11(Thu) 04:35:21 ID:upd9DdGd.net] 俺はあのおっさんはハゲで臭いけどできるやつだって思ってるわ しゃちょーの器だ 頑張ったな、おっさん
736 名前:デフォルトの名無しさん mailto:sage [2020/06/11(Thu) 05:50:14 ID:p+d7/Y3X.net] >>708 質問スレで何を言ってんだ?
737 名前:デフォルトの名無しさん mailto:sage [2020/06/11(木) 07:33:56.10 ID:Ppd1dcd+.net] 馬鹿って言いたいだけの人の相手しちゃダメ
738 名前:デフォルトの名無しさん mailto:sage [2020/06/11(木) 12:31:19.92 ID:9UX6mR7k.net] いや、学ばない俺でも流石にセルに反映されるボタンくらいは聞かずに作れたのでそこまでは聞いてないですよ ボタンに アクティブセルとテキストボックスのvalueを=の動きつけるだけだし
739 名前:デフォルトの名無しさん mailto:sage [2020/06/11(木) 14:46:24.05 ID:xmZccwT9.net] その「だけ」の組み合わせなんだよなぁ
740 名前:デフォルトの名無しさん mailto:sage [2020/06/11(Thu) 15:47:31 ID:fXLeDjMq.net] 算数の問題で答えだけ合っていても計算式がないと正解にはならない カンニングとみなされるって知らんのか そうやって問題から逃げている初心者に教えることはない
741 名前:デフォルトの名無しさん mailto:sage [2020/06/11(Thu) 15:50:35 ID:fXLeDjMq.net] ちょっと言いすぎたかな
742 名前:デフォルトの名無しさん mailto:sage [2020/06/11(木) 15:56:00.83 ID:G1l0Tewu.net] いや、それでいいんだよ
743 名前:デフォルトの名無しさん mailto:sage [2020/06/11(Thu) 16:13:44 ID:HN+bic0j.net] エクセル初心者はVBAなんて触らんし VBAやマクロ禁止の部署もあるからなぁ パートさんには入力欄とクリックのみだったりとか まー初心者がこのスレ見ることもないか・・
744 名前:デフォルトの名無しさん mailto:sage [2020/06/11(木) 17:23:40.82 ID:9UX6mR7k.net] いやもう完成しました 感謝もしたし謝罪もします 計算式はPCないところで関数電卓使ったりするから嫌でもわかっとります √( xズレ^2+yズレ^2) *2 VBAでもまず覚えようと思ったので Xズレ→B列 Yズレ→C列 位置度→D列のデータの時 Dim s As Long Do While Cells(s, 3) <> "" Cells(s, 4) = Sqr(Cells(s, 2) ^ 2 + Cells(s, 3) ^ 2) * 2 Cells(s, 4) = Format(Cells(s, 4), "0.000") s = s + 1 Loop エンドサブちゃん 高卒には荷が重すぎ 高学歴でしょここの人達
745 名前:デフォルトの名無しさん mailto:sage [2020/06/11(木) 17:29:15.93 ID:/dMXe1DS.net] その言い訳がましいフレーズをレスに入れるから良くないって、今後は書き込む前に考えたほうがいいよ ここはもう来なくてもいいから
746 名前:デフォルトの名無しさん [2020/06/11(木) 17:34:53.28 ID:Gg4t4WTy.net] 俺は計算系は答えられんがここは質問スレだからどんどんこい。 煽ってるだけの奴は何の目的でこのスレにするんだ。芸能人の話題待ちでもあるまいし。 自分の決め事があるならいいけど初心者は変数は後でわかるようにとにかく宣言すべし。 日本語だけはあまりお勧めしない。
747 名前:582 mailto:sage [2020/06/11(木) 19:31:53.23 ID:lwV9wV8Y.net] >>718 何で、そのループが必要なのかな? あと、いきなりCellsで始まるのはあまり良くない。 ブックなりシートなりから書いた方が良い。 でも、それだと長くなるからWithやSetを使う。
748 名前:デフォルトの名無しさん mailto:sage [2020/06/11(木) 20:34:47.38 ID:upd9DdGd.net] 特定の行・列を表示・非表示にするボタン使ってるんだけどさ この行・列にActiveXの他のボタンがあったりなんかするこ、たまにこいつらが消滅するんだよなぁ debug.printとかで位置確認すると確かにそこにいるんだけどHeight=0とかになってる んで適当にSubプロシージャ作ってHeight=200とかに設定するんだけどだめ ならない エラーはかないけど、debug.printで確認してもぜぃろぉのまま Deleteも効かない てかエラー出る オブジェクトの選択と表示からみると存在してる 再起動してもだめ てかたまに開けなくなるw しゃーないから、新しいシート作って、そこにシート全選択でこぴぺすると 表示されてるボタンはコピーされるが 消滅したボタン群だけはコピーされない コピーされないってのは、オブジェクトの選択と表示にそいつらが出なくなることから判断してる 消えたやつは新しく作り直してる まぁそうすると元に戻るんだけどさ なんだか半分死んでて半分生きてるような感じなんだろうなぁ お前らこういうことある?
749 名前:蟻人間 mailto:sage [2020/06/11(木) 20:43:48.25 ID:9OB4DptL.net] ActiveXはサポート終了でしょ
750 名前:デフォルトの名無しさん mailto:sage [2020/06/11(木) 20:47:39.72 ID:upd9DdGd.net] だってぇ・・・右クリで移動されちゃうボタンとかいやだもん
751 名前:デフォルトの名無しさん mailto:sage [2020/06/11(Thu) 21:20:07 ID:v1OJq4JH.net] Active S○X
752 名前:デフォルトの名無しさん [2020/06/11(木) 21:49:44.43 ID:Pc/1Hill.net] txt123 = objIE.document.all.tags("table")(2).outerText でテキストを取得しました。 txt123 の中に授業表が入っています。 体育という単語が含まれていれば、A列のセルに〇、国語という単語が含まれていればB列に〇、 算数はC列・・・ という具合に特定の文字列が含まれていれば指定の列のセルに〇を入れたいのですが、 どうしたらいいでしょうか? 特定の文字列は国語、算数、体育、社会、理科の5つです。
753 名前:デフォルトの名無しさん mailto:sage [2020/06/11(Thu) 21:52:07 ID:DFKeKDYT.net] >>726 馬鹿は死ねば治るかもよ
754 名前:蟻人間 mailto:sage [2020/06/11(木) 21:55:51.11 ID:fTevQdJs.net] >>726 文字列を検索する関数とIf文を使えば?
755 名前:デフォルトの名無しさん [2020/06/11(木) 22:00:18.32 ID:vUhEmjDF.net] >>726 こんなこともわからない頭の悪い奴に教えられる子供がどうなるか
756 名前:デフォルトの名無しさん mailto:sage [2020/06/11(木) 22:05:40.83 ID:S8xfnPZH.net] >>726 色々無理だと思うぞ。やめとけ。
757 名前:デフォルトの名無しさん mailto:sage [2020/06/11(Thu) 22:28:34 ID:Pc/1Hill.net] >>728 ありがとうございます! If InStr(txt123, "国語") > 0 Then こんな感じに値が返ってきたら〇と入力する仕組みになりました
758 名前:デフォルトの名無しさん mailto:sage [2020/06/11(木) 23:19:34.07 ID:fXLeDjMq.net] まさかと思うがテキストボックス123個とか作ってるんじゃないよな
759 名前:デフォルトの名無しさん mailto:sage [2020/06/11(木) 23:44:22.39 ID:52kheZTp.net] 何でそれでいきなりIE制御・・・。
760 名前:デフォルトの名無しさん mailto:sage [2020/06/12(金) 00:13:44.58 ID:Y0E/tOto.net] 授業表をIEで見るって社内システムがそれなのか?
761 名前:デフォルトの名無しさん mailto:sage [2020/06/12(金) 00:33:39.25 ID:cWAZHeBV.net] IE制御とかレガシーにも程があるだろ。。
762 名前:デフォルトの名無しさん mailto:sage [2020/06/12(金) 00:43:49.91 ID:V6O8I1+o.net] WebページのテーブルってエクセルのVBAで IE以外にどうやって取得するの?
763 名前:デフォルトの名無しさん mailto:sage [2020/06/12(金) 01:56:00.71 ID:MW3IhN88.net] test
764 名前:デフォルトの名無しさん mailto:sage [2020/06/12(金) 02:10:15.74 ID:MW3IhN88.net] 選択した範囲のセル色を変えたいです。 If Intersect(Target, Range("B1:B5")) Is Nothing Then Exit Sub 色変更処理 変更可能なセルはB1:B5のみとしたいですが、 これだとB6が一緒に選択されている場合に一緒に色が変更されてしまいます。 B1:B6を囲ってしまった場合でも、B1:B5までの色のみ変更させたい場合どうしたらいいでしょうか。
765 名前:デフォルトの名無しさん [2020/06/12(金) 02:51:45.45 ID:KALz8/u9.net] また馬鹿か
766 名前:デフォルトの名無しさん mailto:sage [2020/06/12(金) 03:29:37 ID:IFmaagGk.net] >>738 選択した範囲は選択されているのか?
767 名前:デフォルトの名無しさん mailto:s
[] [ここ壊れてます]
768 名前:age mailto:2020/06/12(金) 06:26:26.47 ID:u23pgbjD.net [ >>738 intersectした結果とTargetを比較したらいけないかな ] [ここ壊れてます]
769 名前:デフォルトの名無しさん mailto:sage [2020/06/12(金) 07:59:23 ID:d1Ad7gfn.net] >>722 シートに配置したボタンでよく遭遇するよ。そんなもんだと思ってるから、ボタン押下時のコードに自分自身の位置とサイズを初期化するコードを書くようにしてる。
770 名前:デフォルトの名無しさん mailto:sage [2020/06/12(金) 08:22:21 ID:F5wzc1/2.net] >>739 分からないからそれしか言えないのか?
771 名前:582 mailto:sage [2020/06/12(金) 08:32:29.25 ID:KgwnUKnv.net] >>736 俺が知ってる方法で4〜5種類の方法がある。 MSXMLとかWinHttpとかhtmlfileとか。
772 名前:582 mailto:sage [2020/06/12(金) 08:34:43 ID:KgwnUKnv.net] >>722 どっかのリボンにオブジェクトのリスト出せるボタンが有ったと思うが、表示されなかったっけ?
773 名前:582 mailto:sage [2020/06/12(金) 08:36:08 ID:KgwnUKnv.net] >>742 サイズ変わって見えなくなってるだけだよなあ。
774 名前:デフォルトの名無しさん mailto:sage [2020/06/12(金) 12:46:47.02 ID:HqN3pHW3.net] >>722 セルにあわせて移動やサイズ変更するかどうかの設定があったはずだが
775 名前:デフォルトの名無しさん mailto:sage [2020/06/12(金) 13:13:42.59 ID:1+2Rgw6z.net] >>747 バージョン2010以降「セルに合わせてサイズ変更や移動しない」の設定になっていても サイズが変わってしまう事例を多数経験しています。(2007は経験なし) ボタンだけでなく、コメントの位置も極端に移動すること多数。
776 名前:デフォルトの名無しさん mailto:sage [2020/06/12(金) 13:14:30.95 ID:hxFv/xna.net] >>744 ヘェ〜そんな関数あるんだ、IEオブジェクトだけかと思ってた、ありがとう
777 名前:デフォルトの名無しさん mailto:sage [2020/06/12(金) 17:49:02 ID:aQA9YYrW.net] >>742 エクセルに任せるんじゃなくてコード上で配置の指示だしておくってのは解決策になるのかもしれんね。ちっこくして非表示切り替えと関係ない安全な場所に退避させておくみたいな >>745 それが「オブジェクトの選択と表示」 リストには出てるんだわ >>747 まぁその辺もやってるんだけどね むしろその辺でバグってるんだと思う >>746 おれの書いた内容読んでないのかもしれんけど VBAからサイズを再指定して表示させようとしてもバグってて指定を受け付けてくれないってことな そもそもサイズの問題だけならシートコピーで他の正常なボタンと一緒にコピーされるはずじゃん
778 名前:デフォルトの名無しさん mailto:sage [2020/06/12(金) 23:01:56.39 ID:FlbnSBZd.net] Windows10に変えたら、クロマキー合成みたいなのが出来なくなっちゃったんだけど、 何か方法ない?
779 名前:デフォルトの名無しさん [2020/06/12(金) 23:29:11.20 ID:KALz8/u9.net] また馬鹿が来た
780 名前:デフォルトの名無しさん mailto:sage [2020/06/12(金) 23:57:17 ID:FlbnSBZd.net] >>739 >>752 一体どんな無様な人生を送ったら、そんなコメントが出来るようになるのかな? 生きててつまんないだろう? ここの住人にかまってもらえるのが唯一の楽しみかい?
781 名前:デフォルトの名無しさん mailto:sage [2020/06/13(土) 00:29:59.36 ID:0QXppYe5.net] クロマキーはWin7まで。 ていうかクロマキーて・・。 確かにクロマキーだが。
782 名前:デフォルトの名無しさん mailto:sage [2020/06/13(土) 01:18:01.22 ID:l5EmusQW.net] 一旦あきらめて、真の目的を違う方法で達成することを考えましょう
783 名前:デフォルトの名無しさん [2020/06/13(土) 03:31:14.05 ID:d/IEOBZf.net] >>753 自分が言われたという自覚があるんだ?
784 名前:デフォルトの名無しさん mailto:sage [2020/06/13(土) 06:33:26.28 ID:iOfV/qX/.net] >>752 実は自分もわかってないからここで勉強してるんだろ でマウント取りたいからそのコメント
785 名前:デフォルトの名無しさん mailto:sage [2020/06/13(土) 07:35:38 ID:gm1IvgiV.net] 質問スレなんてどこでも、マウントとって承認欲求を満たそうとする奴らばかりだよ。 特にVBAスレは、プログラミング板の他のスレでは相手にされないレベルの奴がここなら俺でもマウントとれるだろと集まってくる。
786 名前:デフォルトの名無しさん mailto:sage [2020/06/13(土) 10:49:08.95 ID:hwBvm+CU.net] VBA始めて1週間 結構できるようになったけど、俺ってすごい!?
787 名前:デフォルトの名無しさん mailto:sage [2020/06/13(土) 11:02:28 ID:iOfV/qX/.net] >>759 どうやって勉強した?どこまでできるようなった?
788 名前:デフォルトの名無しさん mailto:sage [2020/06/13(土) 12:54:09.65 ID:l5EmusQW.net] VBA完全に理解した ↓ VBAなにもわからない ↓ VBAチョットデキル
789 名前:デフォルトの名無しさん mailto:sage [2020/06/13(土) 13:53:12.35 ID:sXc2xmOg.net] 何を以て「できる」と判断したのか?
790 名前:デフォルトの名無しさん mailto:sage [2020/06/13(土) 13:57:01.18 ID:k9PzEFx9.net] 初心者の頃に書いたコードみるとマジナンだらけでチョベリバだわ
791 名前:デフォルトの名無しさん mailto:sage [2020/06/13(土) 14:05:41.14 ID:GFk/ON+H.net] 編集ができるってことじゃね
792 名前:デフォルトの名無しさん [2020/06/13(土) 14:17:20 ID:Ft3NByW3.net] ダニングクルーガー効果とかいうやつじゃね
793 名前:デフォルトの名無しさん mailto:sage [2020/06/13(土) 15:41:58.59 ID:9rN9x/HV.net] VBAに限らないコーディング全般の話になるかと思うんですが、 For文のカウンタ変数に対してそのブロック内で加減算するのはいわゆる「お行儀が悪い」ものですか? For i = min To min Step -1 For j = i + 1 To max 〜処理〜 If 条件 Then 〜処理〜 Let i = i + 1 '←ココ 〜処理〜 Else 〜処理〜 End If 〜処理〜 Next j 〜処理〜 Next i 前任者が使っていた20行にも満たないコードですが、1行目に違和感がありました。 Do While/Until文で書き直せるものの、単に自分の理解度が低いだけかもしれず・・・
794 名前:デフォルトの名無しさん mailto:sage [2020/06/13(土) 15:59:50.04 ID:sXc2xmOg.net] >>766 俺ならforにしないな
795 名前:デフォルトの名無しさん mailto:sage [2020/06/13(土) 16:03:06 ID:hwBvm+CU.net] データ用のシートからデータをコピーできるようになったぜ ところでクラスモジュールにはどんなメリットがありますか? functionの意味は分かりましたが、クラスとの違いなどがよく分からず 今本屋で色々探してきましたが、解説が見当たりませんでした。
796 名前:デフォルトの名無しさん mailto:sage [2020/06/13(土) 16:04:33 ID:HDBeOIwd.net] >>766 forにせずif文で条件抜けさせる方が読み手に伝わるし良いと思う… stepで減算してるのに条件次第でi加算するのは処理の流れが分かりづらくなる
797 名前:デフォルトの名無しさん mailto:sage [2020/06/13(土) 16:05:08 ID:ll49+YlL.net] 一般的に、for nextの方が理解しやすいから、for 文ありきで書いてるだけなんじゃないかな。 感覚的にも可読性やメンテナンス性からも、do loopなどで書く方が良いと思います。
798 名前:デフォルトの名無しさん mailto:sage [2020/06/13(土) 16:14:12.41 ID:lPN2rvMv.net] >>768 VBAのクラスはCOMとの相互運用のために存在する 普通に使う分には全く必要ない というか並のVBAerのスキルではメンテ不能になるからむしろ有害 クラスを使いたくなるレベルの高度な抽象化が必要になるようなら、 そもそもそんなことをVBAでやらなければならないシステム設計が間違っていると考えるべき
799 名前:デフォルトの名無しさん mailto:sage [2020/06/13(土) 16:49:04 ID:9rN9x/HV.net] >>767, >>769-770 やはりそうですよね。Do〜に書き直そうと思います。ありがとうございました。
800 名前:デフォルトの名無しさん mailto:sage [2020/06/13(土) 16:50:17 ID:hwBvm+CU.net] >771 ありがとうございます。 そこまでの説明が探しきれなかったので助かります。
801 名前:デフォルトの名無しさん mailto:sage [2020/06/13(土) 16:52:28 ID:69sGe9cG.net] >>766 Forの使い方を間違ってる 途中で1足して、最後にまた1引くんなら、Do LoopとIfなどを使って条件をはっきり書くべき プログラミング全般の話となると、コンパイラによっては最初にStep値で割り算して回数を求めてしまうコードを吐くやつもあるので、正常に動かなくなる
802 名前:デフォルトの名無しさん mailto:sage [2020/06/13(土) 18:20:23.36 ID:gmb5Wcnr.net] ブックのなかに、シートがたくさんあって、 マクロ利用者毎にマクロで動かしたいシートが違う。 だから、マクロの実行中に、利用者にシートを選択させて、それをactivesheetにさせたい。 そういうの、できる?
803 名前:デフォルトの名無しさん mailto:sage [2020/06/13(土) 18:31:43.88 ID:sXc2xmOg.net] できる
804 名前:デフォルトの名無しさん mailto:sage [2020/06/13(土) 18:35:00.95 ID:Q06gyfKt.net] >>775 ロジック的に変 Webページやスマホアプリでも最初にログインするのとかあるでしょ? 後から選択するくらいなら最初に分けた方が良いのでは?
805 名前:デフォルトの名無しさん mailto:sage [2020/06/13(土) 18:38:57.44 ID:gmb5Wcnr.net] >>777 できれば、そうしたんだけど。 何人もの利用者が共通で使っているブックなので、シートを分けられないんだ。 シートがゴチャゴチャの状態から特定シートを利用者に選ばせたい。
806 名前:デフォルトの名無しさん mailto:sage [2020/06/13(土) 18:42:11.92 ID:ejIEXNUq.net] >>775 https://qiita.com/rrryutaro/items/b8bdc6d16bdf8c66a190 この辺コピペしたら動くんじゃない?
807 名前:デフォルトの名無しさん mailto:sage [2020/06/13(土) 18:54:40.10 ID:Q06gyfKt.net] >>778 ごめん参りました_| ̄|○>>779
808 名前:デフォルトの名無しさん mailto:sage [2020/06/13(土) 18:56:13.87 ID:gmb5Wcnr.net] >>779 回答サンクス。 でも、もっとコードをシンプルにしたい。
809 名前:デフォルトの名無しさん mailto:sage [2020/06/13(土) 18:56:56.64 ID:gmb5Wcnr.net] >>781 マクロを途中で止めて、利用者にシートを選択させることによって(そのシートのどこかのセルを選択させる)、activesheetにさせたいんよ。
810 名前:デフォルトの名無しさん [2020/06/13(土) 19:11:25.34 ID:Ft3NByW3.net] 自分でシートを開いてその後マクロを実行する形じゃダメなの
811 名前:デフォルトの名無しさん mailto:sage [2020/06/13(土) 19:20:55 ID:gmb5Wcnr.net] >>783 今は、苦肉の策でそうしてるんだけどね。 諸事情により途中でactivesheet を選ばせたいんだ。
812 名前:デフォルトの名無しさん mailto:sage [2020/06/13(土) 19:50:08.25 ID:mObNCAEc.net] これでいい気がする https://qiita.com/yosatonet/items/b7083d7c95d2d81b1ffa
813 名前:デフォルトの名無しさん mailto:sage [2020/06/13(土) 20:02:21.69 ID:gmb5Wcnr.net] >>785 サンクス ありがとー。 でも、もっと簡単にできんかな。 どうやら、無理っぽいな。
814 名前:デフォルトの名無しさん mailto:sage [2020/06/13(土) 20:08:18.16 ID:Q06gyfKt.net] マクロの途中で>>779 で作ったUserForm1.Showすりゃ良いでしょう
815 名前:デフォルトの名無しさん mailto:sage [2020/06/13(土) 20:23:03.52 ID:mObNCAEc.net] じゃあこれ https://www.relief.jp/docs/excel-vba-select-cells-application-inputbox-methot.html
816 名前:デフォルトの名無しさん mailto:sage [2020/06/13(土) 20:28:03.66 ID:sXc2xmOg.net] >>782 途中でセル選択ダイアログでも表示すりゃいいじゃん
817 名前:デフォルトの名無しさん mailto:sage [2020/06/13(土) 20:36:43.64 ID:gmb5Wcnr.net] >>788 ありがと。 それやってみたけど、ちょっと面倒だった。 もう一回やってみる。
818 名前:デフォルトの名無しさん mailto:sage [2020/06/13(土) 20:42:30 ID:gmb5Wcnr.net] >>788 やっぱ、いけるかも。
819 名前:デフォルトの名無しさん mailto:sage [2020/06/13(土) 20:42:48 ID:gmb5Wcnr.net] >>789 ありがと。いけるかも。
820 名前:デフォルトの名無しさん mailto:sage [2020/06/14(日) 08:41:44.1
] [ここ壊れてます]
821 名前:2 ID:ffGowWaR.net mailto: >>790 よく分からんがモードレスにすりゃ良いんじゃねえの? [] [ここ壊れてます]
822 名前:デフォルトの名無しさん mailto:sage [2020/06/14(日) 11:14:04 ID:uWyGdyFQ.net] >>768 複数の自作関数をセットにして使いまわしたい時とか、 取得した値をプロパティとして保持しておきたい時とか、 自作関数でインテリセンスを使いたい時とか。
823 名前:デフォルトの名無しさん mailto:sage [2020/06/14(日) 11:20:05.40 ID:ZfTKHz7W.net] >>794 モジュールと構造体でいいよねそれ
824 名前:デフォルトの名無しさん [2020/06/14(日) 11:21:47.96 ID:435IzS7y.net] VBA歴まだ1ヶ月 でtxtデータから全て数値をシートに引っ張り出す事は成功したけどそれをVBAで計算させるスキルはないからエクセル関数使ってる もっとスキルが欲しい
825 名前:デフォルトの名無しさん mailto:sage [2020/06/14(日) 12:36:35.03 ID:PywPq9gj.net] 関数でできることは関数でやりましょう(例外あり)
826 名前:デフォルトの名無しさん mailto:sage [2020/06/14(日) 12:52:53.71 ID:UBYu/Pyg.net] 関数ばかりでもいかんですう
827 名前:デフォルトの名無しさん [2020/06/14(日) 13:01:56 ID:435IzS7y.net] 引っ張り出した数値を ABS関数 ROUND関数 MAX、MIN関数 IF関数 でだんだんフィルターを通す感覚で で本来の数値に対応させてる VBAでそれをやる力を得るには5年はかかるな 俺じゃ
828 名前:デフォルトの名無しさん mailto:sage [2020/06/14(日) 13:26:59.00 ID:0qngbhsm.net] 限定的な使い方になるが、連想配列でユーザ定義型使いたい時に代わりにクラスモジュール使うって手がある
829 名前:デフォルトの名無しさん mailto:sage [2020/06/14(日) 13:44:32.79 ID:attwzNFV.net] 質問ですが、列が3つありそのうち2つが検索用ワードで これを元に検索し3つ目のセルにあるワードを配列に収めていく処理を行いたいです。 例えば、こういったテーブルがあります。 すずき、いちろう、170 すずき、じろう、171 たなか、さぶろう、172 検索条件を1列目「すずき」2列目「条件なし」とした時、170,171を配列に収める 検索条件を1列目「すずき」2列目「いちろう」とした時、170を配列に収める と、やろうとした時どういった処理が考えられるでしょうか。
830 名前:デフォルトの名無しさん mailto:sage [2020/06/14(日) 13:51:33.71 ID:nNGIeJAo.net] データベースのアンド検索クエリ覚えなはれ
831 名前:デフォルトの名無しさん mailto:sage [2020/06/14(日) 13:52:24.03 ID:0qngbhsm.net] >>801 オートフィルタで抽出して3列目を配列に格納
832 名前:デフォルトの名無しさん mailto:sage [2020/06/14(日) 14:09:01.53 ID:NfMb0cpJ.net] >>801 まず表の範囲をテーブル化 そしたらテーブル操作の処理使えて簡単 officetanaka.net/excel/vba/table/
833 名前:デフォルトの名無しさん mailto:sage [2020/06/14(日) 14:16:14 ID:UBYu/Pyg.net] >>801 逆にどういった処理も考えられないの?
834 名前:デフォルトの名無しさん mailto:sage [2020/06/14(日) 14:28:07 ID:attwzNFV.net] ありがとうございます。 テーブル化の方向で調べてみます。
835 名前:デフォルトの名無しさん mailto:sage [2020/06/14(日) 17:08:34 ID:zv9EPLCI.net] ユーザー定義関数をさ、AutoFill使って連続した複数セルに「=MyFunction()」みたいな感じで 代入していくじゃん 数式は正確に代入されてるのになぜか#VALUE!のエラーがでるんだよなぁ 計算対象になってるセルの1つをダブルクリックして値を入力するモードにしてから そのまま何もしないでエンター押すと、さっきまで#VALUE!だったところが 再計算されて正常にセルに表示される オートフィルに備えて連続セルの一番先頭にVBAから個別に代入しておいたセルがあるんだけど ここはちゃんと計算結果がでてる んで、このセルを始点にして手動でオートフィルかけて数式いれるとちゃんと計算される 手動オートフィルの結果代入された数式とVBAのAutoFill使って代入した数式を比較しても全く同じ でもVBAのほうだけは#VALUE!ですわ これ一体なんなのさ 一通り調べてわからんかったからAutoFillやめてForで回していれたった やっぱ俺にはこういう原始人的なコードがあってるわ
836 名前:デフォルトの名無しさん mailto:sage [2020/06/14(日) 17:36:38 ID:0qngbhsm.net] >>807 計算対象のセルが更新された時自動で関数が処理される設定になってないから
837 名前:デフォルトの名無しさん mailto:sage [2020/06/14(日) 17:49:03.80 ID:AaZP5Hye.net] >>806 ワシのやり方を参考にするなら Youtubeのチャンネル登録してな。
838 名前:デフォルトの名無しさん mailto:sage [2020/06/14(日) 18:50:39.41 ID:zv9EPLCI.net] >>808 手動・自動のやつでしょ もちろん自動になってるわ Forで回して数式代入したときは普通に計算されるから理由としてはいまいちじゃね あと手動でオートフィルしてもいけるしね 表の右端に何列か並んでる数式は全部計算されるんだけど 下端にあるやつがだめなんだよね どちらも全く同じパターンで代入してんだよね まぁForでできるからいいんだけどな
839 名前:デフォルトの名無しさん mailto:sage [2020/06/14(日) 19:19:38 ID:0qngbhsm.net] >>810 シートじゃなくて関数の設定 volatire
840 名前:デフォルトの名無しさん mailto:sage [2020/06/14(日) 20:00:28.24 ID:Nip9LUw0.net] >>811 volatile (揮発性) じゃね?
841 名前:デフォルトの名無しさん mailto:sage [2020/06/14(日) 20:18:20.66 ID:95POjxnT.net] >>807 > =MyFunction() みたいに引数がないと>>811 が言うようにvolatile指定しないと再計算されない 引数にセルとか範囲を指定してあると指定されたセルや範囲の値が変更されたら再計算される
842 名前:デフォルトの名無しさん mailto:sage [2020/06/14(日) 21:59:15.66 ID:NTnc+gBz.net] >809 本人?。GW終わって更新控えめな気がする
843 名前:デフォルトの名無しさん mailto:sage [2020/06/15(月) 00:54:28.92 ID:otdT67Yk.net] フォームを開いている際にセルをクリックしようとしても阻止されるんですが、 この行動を行った際にフォームを閉じるという処理をすることはできますか?
844 名前:デフォルトの名無しさん mailto:sage [2020/06/15(月) 00:59:25.05 ID:AC0AKbql.net] ユーザーフォームのイベントで制御できなきゃ無理じゃね 一覧くらい見たんだろ
845 名前:デフォルトの名無しさん mailto:sage [2020/06/15(月) 02:14:12 ID:VIqxNPAl.net] >>814 この人はダメだね。 コメントでちょっと突っつかれただけで コメント欄オフにするしプライドが高すぎ。 知識や経験が豊富で教え方も上手いとは思うけど ユーチューバ―には向いてないと思うわ。
846 名前:デフォルトの名無しさん mailto:sage [2020/06/15(月) 05:44:07.25 ID:YCbdWLsV.net] >>811 >>813 Application.Volatile 入れてみた 結果だけど、やっぱボタン押して数式代入した直後はダメだった 変らず#VALUE! 変化があったのは計算対象になっているセルを1つ変更すると、 MyFunctionが入っているセルの全てが再計算されて正常値が表示されるっていう点ね Volatile入れる前は、変更セルを計算対象としてるセル1つだけが再計算された ちなみにMyFunction(rng As Range)です。すんません あと、これ重くなりそうでちと考えてしまう
847 名前:デフォルトの名無しさん mailto:sage [2020/06/15(月) 10:48:29 ID:zn0xvlk+.net] >>818 ボタンのコードの後ろに、Application.Calculate とかを入れる
848 名前:デフォルトの名無しさん mailto:sage [2020/06/15(月) 11:02:05 ID:zn0xvlk+.net] >>815 フォームを閉じるにはUnload ステートメント、非表示にするだけなら hide メソッドを使う セルクリックが目的なら、ShowModal=False か、フォームのShowメソッドで vbModeless を指定すれば、閉じなくてもいいよ
849 名前:デフォルトの名無しさん mailto:sage [2020/06/15(月) 22:32:32.01 ID:qQkMiS3I.net] >>818 よくわかってなくてすまぬが数式入ってるセル全部選択して Selection.Value = Selection.Value とか「=」を「=」に置換するとかして内容同じだけど編集したことにすると 全部計算される、ってのは根本的な解決方法じゃないけどそれは別の問題?
850 名前:デフォルトの名無しさん mailto:sage [2020/06/15(月) 22:40:50.61 ID:eWIek9um.net] >>821 代入で再計算させるなら formula = formula だぞ
851 名前:デフォルトの名無しさん [2020/06/15(月) 22:42:03.32 ID:GtKitEiM.net] このスレの住民ってVBAエキスパートとか余裕な感じ?
852 名前:デフォルトの名無しさん mailto:sage [2020/06/15(月) 22:58:28.87 ID:MWB6z4Ac.net] 余裕でダメだと思う。 運転歴20年のやつが、教習所の学科試験に通るかどうか。
853 名前:デフォルトの名無しさん mailto:sage [2020/06/16(火) 01:37:43.85 ID:vbVHH0Hs.net] 練習問題を見た感じ、満点は無理だけど合格はできると思う
854 名前:デフォルトの名無しさん mailto:sage [2020/06/16(火) 02:23:10 ID:4czdKWOA.net] 人によるだろう
855 名前:デフォルトの名無しさん mailto:sage [2020/06/16(火) 08:13:35.35 ID:4RAL3CE7.net] >>819 それ以前試してだめでしたわ >>821 >>822 解決方法なのかどうかは置いておいて、面白い視点だなって思いました Selection.Formula = Selection.Formula で、問題のあった2行のうち1行は行けました この2行の違いを分析すると何か見えてくるかもしれないなぁ 似たような方法なんだけど、これはいけた Dim ary ary = Sheet1.Range("G11:AH11") Sheet1.Range("G11:AH11") = ary 数式は表の最下部の行 G50:AH50 の各セルに入っていて、 例えばG50の数式はG11を引数の一部として使っている 計算の対象となっている値の一部を代入し直してみたってこと Forで回して数式入れていくのは見た目ごちゃごちゃするから わかりやすさっていう点ではこっちの方がいいのかな
856 名前:デフォルトの名無しさん mailto:sage [2020/06/16(火) 12:20:48.09 ID:6wBq1IET.net] >>824 運転歴20年の奴は余裕で通る。 というか、はっきり言ってVBAエキスパートは初心者と変わらんよ。 某掲示板で質問者にもっと勉強してね的なこと言ったら持ってたようだった。
857 名前:デフォルトの名無しさん mailto:sage [2020/06/16(火) 19:13:50.26 ID:Kui7C9E3.net] リストビューなるものを触ってみましたが2点分からないです。 @データを転記する際にwith文を使うとうまく出来て、使わないと一行ずつズレるのは? Me.ListItems.Add .Text = 111 .SubItems(1) = 222 .SubItems(2) = 333 End With Addして追加だからズレるのだろうけど、withって単なる省略だから同じ意味じゃないの? A転記したリストビュー全項目ループするにはどうしたいいですか?
858 名前:デフォルトの名無しさん mailto:sage [2020/06/16(火) 20:14:01.04 ID:v7FumBBx.net] Doしたらいい
859 名前:デフォルトの名無しさん mailto:sage [2020/06/16(火) 21:46:13.61 ID:aBdT/SFF.net] いや呼び方の問題とか、FormatだのStrComp関数だのあんまり使わんの出るから模試はやったほうがいいよ
860 名前:デフォルトの名無しさん mailto:sage [2020/06/16(火) 21:52:16.10 ID:aBdT/SFF.net] >>829 withはコード省略じゃなくて参照。 (増やす)ってメソッド処理は一回だけで、(増えた項目)って出力インスタンスを参照できる形になる with 使わないと毎回(増やす+編集)の処理になる
861 名前:デフォルトの名無しさん mailto:sage [2020/06/16(火) 21:57:13.61 ID:aBdT/SFF.net] 項目じゃなくてリストの間違いだった
862 名前:デフォルトの名無しさん mailto:sage [2020/06/16(火) 22:40:42.45 ID:woSalLPH.net] >>827 Selection.Calculate でもダメなんですよね?
863 名前:デフォルトの名無しさん mailto:sage [2020/06/16(火) 23:47:36.73 ID:cErksS8E.net] >>822 そうそう間違えました 表示形式が反映されないときに.Value使ったんでついそれ書いちゃいました
864 名前:デフォルトの名無しさん mailto:sage [2020/06/17(水) 00:48:13.69 ID:VnGmvv1H.net] >>835 表示形式反映させるなら.Formula = .Formula では
865 名前:デフォルトの名無しさん mailto:sage [2020/06/17(水) 13:19:05.23 ID:vz74rE0X.net] .Shimura = .Ushiro
866 名前:デフォルトの名無しさん mailto:sage [2020/06/17(水) 15:24:21 ID:3v2Pocgc.net] そのコマンド打ったら参照先が見つかりませんってエラーが出たんだが
867 名前:デフォルトの名無しさん mailto:sage [2020/06/17(水) 15:55:47.59 ID:F6Gn58oB.net] だめだこりゃ!
868 名前:デフォルトの名無しさん [2020/06/17(水) 17:19:39.75 ID:AebhaO3Q.net] 前スレの人達のくれた今の職場にいる限り永久に使える心臓部になるプロシージャ3つ これのおかげで救われた 後はひたすら勉強しないといけない ただそのせいで毎日
869 名前:夜中の2時とかまで強迫観念に捕らわれたように本やサイト見て体壊しかけてる 前スレの人達ありがとう [] [ここ壊れてます]
870 名前:デフォルトの名無しさん mailto:sage [2020/06/17(水) 17:52:05.46 ID:VnGmvv1H.net] 独り言板へどうぞ
871 名前:デフォルトの名無しさん mailto:sage [2020/06/17(水) 18:14:13.33 ID:LyT08W7k.net] そこまで初心者の人がやらなきゃいけないのか… 専門の派遣でも雇えば…
872 名前:デフォルトの名無しさん mailto:sage [2020/06/17(水) 18:25:49 ID:1+VGIPZ0.net] >840 前スレのどれ?
873 名前:デフォルトの名無しさん mailto:sage [2020/06/17(水) 19:41:41.88 ID:3u8uTgOs.net] まあ嘘だろうけどな、そんなん
874 名前:デフォルトの名無しさん [2020/06/17(水) 20:29:26.87 ID:Pc4G9CL1.net] 前スレ見えないけど フォルダ内のテキストすべての特定の部位から文字を全部抽出するコード これです
875 名前:デフォルトの名無しさん [2020/06/17(水) 20:47:48.75 ID:6I8rhd2p.net] 車輪の再発明どころか劣化真似事をありがたがるような馬鹿は消えろよ
876 名前:デフォルトの名無しさん mailto:sage [2020/06/17(水) 21:02:20.52 ID:UkLP/htk.net] >>836 数式を値で張り付けたときに表示形式が反映されなかったんでValueだったんですよ
877 名前:デフォルトの名無しさん mailto:sage [2020/06/17(水) 21:30:10.13 ID:VnGmvv1H.net] >>847 値貼り付けでは反映されんよ
878 名前:デフォルトの名無しさん mailto:sage [2020/06/18(木) 00:14:55.64 ID:+xg8PxB0.net] 下記のような2次元配列があります。 1,りんご 2,ばなな 3.みかん これの果物名の列だけをセルに代入したいですが、簡単な方法はありますか? 現状、果物の列を一端列数0の配列に入れなおしてそのままセルに代入する案しか思いつきませんが、 もっとスマートな方法あれば教えてください。
879 名前:デフォルトの名無しさん mailto:sage [2020/06/18(Thu) 00:29:49 ID:b73sLWwm.net] 行列入れ替えは考慮外なの? 参考は沢山出てくる EXCELのVBAで2次元配列の特定の列または行を1次元配列に変換する方法 qiita.com/takahasinaoki/items/1295c3df5ddfb13bdf8e
880 名前:デフォルトの名無しさん mailto:sage [2020/06/18(木) 01:18:10.70 ID:AEhoYLDr.net] >>849 3だけピリオド
881 名前:デフォルトの名無しさん mailto:sage [2020/06/18(Thu) 08:45:41 ID:CbKzbr3Z.net] >>849 貼り付け先の果物の前の列が消されても良いなら配列から1、2、3消してそのまま貼り付ける。 駄目なら貼り付け先の値を配列に入れてから貼り付ける。 貼り付け先の値を入れるのは本末転倒だからそういうデータが少ない場合以外は勧めない。
882 名前:デフォルトの名無しさん mailto:sage [2020/06/18(木) 09:42:50.65 ID:1Z+MjfLn.net] >>849 地道に入れ直すしかない
883 名前:デフォルトの名無しさん mailto:sage [2020/06/18(木) 15:10:31.12 ID:JIQPCGLI.net] てか配列から直接セルに代入しないといけないってのは データ数が多いとか速度重視したいとか? そうでないなら基本通りにFor使って入れりゃいいだけなんだけど
884 名前:デフォルトの名無しさん mailto:sage [2020/06/18(木) 15:51:42.38 ID:AEhoYLDr.net] セルに入れるのがそもそも簡単なのに何ができないんだかわからん
885 名前:デフォルトの名無しさん mailto:sage [2020/06/18(木) 16:29:20.31 ID:DGNmlHkR.net] おまいら質問をちゃんと読んでるか? 「簡単な方法はありますか?」なんだから、Forで回すのは嫌ってことだろ つまり回答は「そんな方法はない」
886 名前:デフォルトの名無しさん mailto:sage [2020/06/18(Thu) 16:32:36 ID:DGNmlHkR.net] ステップ数を減らしたいだけなら、一旦そのまま全部ワークシートに入れて2列目だけコピペか1行目を削除すれば数行で完結する たぶんForより速い
887 名前:デフォルトの名無しさん mailto:sage [2020/06/18(Thu) 16:33:11 ID:DGNmlHkR.net] 書き間違い→1列目を削除
888 名前:デフォルトの名無しさん mailto:sage [2020/06/18(木) 17:30:14.12 ID:AEhoYLDr.net] 質問がどっかの問題の引用っぽく感じたので答えはかかないけどね
889 名前:デフォルトの名無しさん mailto:sage [2020/06/18(木) 17:38:49.86 ID:Kimfxpnn.net] 同じ社員同士なのにエクセルの便利機能とかを 情報共有しないのってなんなんだろう
890 名前:デフォルトの名無しさん mailto:sage [2020/06/18(木) 17:57:51.44 ID:1Z+MjfLn.net] ループからの抜け方、@とAどっちが推奨? @ do while for if 脱出フラグ = true exit for end if next if 脱出フラグ then exit
891 名前:do loop A do while for if 脱出条件 then exit do next loop [] [ここ壊れてます]
892 名前:デフォルトの名無しさん mailto:sage [2020/06/18(木) 17:57:55.15 ID:AEhoYLDr.net] 嫌われているんだろ
893 名前:デフォルトの名無しさん mailto:sage [2020/06/18(木) 17:58:44.91 ID:1Z+MjfLn.net] >>860 今まで関わった職場わりとしてるが
894 名前:859 mailto:sage [2020/06/18(木) 18:01:15.31 ID:1Z+MjfLn.net] @の3行目のifは脱出条件な
895 名前:デフォルトの名無しさん mailto:sage [2020/06/18(Thu) 18:12:03 ID:AEhoYLDr.net] >>861 処理の抜けや他の処理に影響がないならという条件付きで?、 場合によっては exit sub 、exit function でも書く
896 名前:デフォルトの名無しさん mailto:sage [2020/06/18(Thu) 19:24:08 ID:LKxMxESP.net] do whileの条件とifの条件ををandで繋いでdo while loop行の前でi=i+1(forのカウンタ代わり) これでよいのでは
897 名前:デフォルトの名無しさん mailto:sage [2020/06/18(木) 19:39:21.23 ID:ck4WAMd+.net] GoToの使用を躊躇しない。
898 名前:デフォルトの名無しさん mailto:sage [2020/06/18(木) 19:42:12.81 ID:1Z+MjfLn.net] >>866 二重ループの抜け方の作法を聞いてるんだが
899 名前:デフォルトの名無しさん mailto:sage [2020/06/18(木) 19:48:21.18 ID:KBH9L3ob.net] do whileとforで2重ループするのが確定で、外側まで一気に抜けるのが確定なら2を選ばない理由がない
900 名前:デフォルトの名無しさん mailto:sage [2020/06/18(木) 19:53:02.72 ID:DGNmlHkR.net] >>868 二重ループの内側から一気に抜けたい時は、俺なら内側のループを別プロシージャにするか、Do Loopを二重にする コード量によってはフラグ変数やExitは見通しが悪くなる、別の言い方をすれば終了条件がわかりづらくなるからあんまり使いたくない
901 名前:デフォルトの名無しさん mailto:sage [2020/06/18(木) 20:17:54.42 ID:1Z+MjfLn.net] >>866 ,869,870 とりあえず処理に問題なければ一気に外に抜けること自体は問題ないってことか 確かにDoに変えるのも手だな 適当に使い分けることにするわサンキュー
902 名前:デフォルトの名無しさん mailto:sage [2020/06/18(木) 20:18:23.62 ID:1Z+MjfLn.net] 間違えたわ>>865 だ
903 名前:デフォルトの名無しさん mailto:sage [2020/06/18(木) 20:21:15.52 ID:ao9b7VBW.net] >>861 囲碁なら上、オセロなら下
904 名前:デフォルトの名無しさん mailto:sage [2020/06/18(木) 20:25:42.22 ID:eqFwPDXL.net] すごく個人的には、Do Untilで書いた方が「抜ける!」って読みやすい
905 名前:デフォルトの名無しさん mailto:sage [2020/06/18(木) 20:26:39.51 ID:eqFwPDXL.net] Do whileよりって話ね そう書けば抜ける複数条件をDoの後ろに書いて違和感が無い
906 名前:デフォルトの名無しさん mailto:sage [2020/06/18(木) 20:28:18.94 ID:XkUbux+a.net] これ… >>873 に『その心は?』って聞いてあげた方がいいの?
907 名前:デフォルトの名無しさん mailto:sage [2020/06/18(Thu) 20:33:29 ID:ao9b7VBW.net] >>876 おじいちゃん出しっぱなしで片付けないんだもん
908 名前:デフォルトの名無しさん mailto:sage [2020/06/18(Thu) 20:34:24 ID:vZk8Xm54.net] Gotoはもちろんのこと、余程のことがない限りはExit For(Do)使うよりはExit Function使った方がいい
909 名前:デフォルトの名無しさん mailto:sage [2020/06/18(Thu) 21:01:16 ID:ob2ctoKl.net] >>878 そんなこたあね―な。
910 名前:デフォルトの名無しさん mailto:sage [2020/06/18(木) 22:48:55.15 ID:Swy0cO/s.net] Do While 何で Loop While 2つあるの? Wend
911 名前:デフォルトの名無しさん mailto:sage [2020/06/18(木) 23:00:26.73 ID:6Vkb8BK5.net] vbaだから
912 名前:デフォルトの名無しさん mailto:sage [2020/06/18(Thu) 23:21:26 ID:1Z+MjfLn.net] >>880 while〜wendは過去の名残 今はdo whileを使うのが正しい
913 名前:デフォルトの名無しさん mailto:sage [2020/06/18(木) 23:40:35.48 ID:Cax/ofky.net] 一応、while wendは最後までループ抜けさせないぞって読ませ方ができる 知ってる人が少なくなってるからむしろ逆効果のお節介となってきているが
914 名前:デフォルトの名無しさん mailto:sage [2020/06/19(金) 00:17:23.49 ID:NwluTwH5.net] 行番号とか代入のLetとかも使ってるやつはいない 過去の名残があちこちにあるのがVBA
915 名前:デフォルトの名無しさん mailto:sage [2020/06/19(金) 08:29:01.10 ID:VZXzW3Q1.net] do while〜loopって構文が気に食わんわ do [処理] while [脱出判定] loop もしくは while [脱出判定] do [処理] loop のほうが思考に沿う ってかdo必要?
916 名前:デフォルトの名無しさん mailto:sage [2020/06/19(金) 09:57:59.84 ID:UXZn7YtP.net] VBA必要?
917 名前:デフォルトの名無しさん mailto:sage [2020/06/19(金) 09:58:43.65 ID:wZIpnWDZ.net] Excelが必要としてるんだ
918 名前:デフォルトの名無しさん mailto:sage [2020/06/19(金) 16:55:48.19 ID:8jNiNgQB.net] だってVBAだから
919 名前:デフォルトの名無しさん mailto:sage [2020/06/19(金) 18:51:31.92 ID:c4aN/6Uq.net] エクセルマクロとして代替えがないから必要だな
920 名前:デフォルトの名無しさん mailto:sage [2020/06/19(金) 21:17:20.11 ID:RlTsj/W2.net] 職場の人が書くマクロ、わかりやすいんだけど無駄改行多くてスクロールしないと全体像掴めないでつらい
921 名前:デフォルトの名無しさん mailto:sage [2020/06/19(金) 21:26:36.78 ID:8GB492Jb.net] >>885 While [脱出判定] [処理] Wend
922 名前:デフォルトの名無しさん mailto:sage [2020/06/19(金) 23:55:48.34 ID:+/P4LWyU.net] >>890 実は強制終了対策で改行してるとか?
923 名前:デフォルトの名無しさん mailto:sage [2020/06/20(土) 00:04:01 ID:6cdt+s4Y.net] >>885 構文解析でトークンの先読みが少なくて済むための配慮じゃないかな、知らんけど
924 名前:デフォルトの名無しさん mailto:sage [2020/06/20(土) 00:41:32.09 ID:YZMPfrl8.net] >>885 英語として Do while a is b. If a is bigger than b, then break.. というのと While if a is bigger than a, do something. どちらが自然かという問題だったようだ。どっちも変だけど
925 名前:デフォルトの名無しさん mailto:sage [2020/06/20(土) 02:09:29 ID:qvmNBmpu.net] >>890 職場での問題なら職場内で解決しなされ
926 名前:デフォルトの名無しさん mailto:sage [2020/06/20(土) 04:41:54.35 ID:heakYJWv.net] ちょ、VBAのCollectionのAddメソッドってvalue/keyの順番だったのかよぉ C#もJavaもPythonもkey/valueの順だから勘違いしてたわ! なんかおかしいとおもった
927 名前:デフォルトの名無しさん mailto:sage [2020/06/20(土) 08:01:08.69 ID:ygihVcRE.net] >>896 Add時にKeyを省略できるからね 省略するとKeyがどうなるのかは知らんけど
928 名前:デフォルトの名無しさん mailto:sage [2020/06/20(土) 09:40:22.78 ID:heakYJWv.net] >>897 重複排除できてねぇぢゃねぇかクソ言語がぁぁぁ!って思ってましたごめんなさい
929 名前:デフォルトの名無しさん mailto:sage [2020/06/20(土) 10:42:49.25 ID:m9vPjHEn.net] >>898 重複排除したいならdictionaryの方がいいんじゃないか
930 名前:デフォルトの名無しさん mailto:sage [2020/06/20(土) 12:12:13.86 ID:RmKRgXjX.net] >>890 それは1プロシージャの行数が多いということかな? それはダメダメだ。 そういうことになることはあるけど、本人が書ける奴なら自分でも分かってるかもね。 時間があれば直すんだけどってのは時々ある。
931 名前:デフォルトの名無しさん mailto:sage [2020/06/20(土) 12:16:26.19 ID:RmKRgXjX.net] >>896 Dictionaryと逆だから注意。
932 名前:デフォルトの名無しさん mailto:age [2020/06/20(土) 12:24:38.59 ID:CytyTodc.net] excelからwordのoleなのですが、印刷プレビュー画面が表示されている あいだは処理を停止させておきたのですが、どうすればできますか? また、excelのほうのPrintPreviewメソッドではそれが実現できるのですが、 その違いはなんなのでしょうか。 Dim WORD As Object Set WORD = CreateObject("Word.application") WORD.Documents.Open(filePath) WORD.PrintPreview = True Do Until WORD.PrintPreview = False Loop
933 名前:デフォルトの名無しさん mailto:sage [2020/06/20(土) 12:44:36 ID:ygihVcRE.net] >>898 重複排除したきゃKey指定すればいいだけだろ てか、そういう使い方しかしたことないわ
934 名前:デフォルトの名無しさん mailto:sage [2020/06/20(土) 12:57:07 ID:m9vPjHEn.net] keyの位置間違えててできなかったって話だろ…
935 名前:デフォルトの名無しさん mailto:sage [2020/06/20(土) 15:27:33.55 ID:ygihVcRE.net] ああすまん、よく読んだらそうだな
936 名前:デフォルトの名無しさん [2020/06/20(土) 15:53:54.10 ID:wuXUOHn9.net] PCに疎い人達の集まる職場 週に1回の頻度で1200個の数値を4時間かけて手打ちしてたのを3秒で終わらせるマクロ組んで改善提案→何かわからんけど組んだんだろ で300円 他のシートやブックに行き来しやすいように 図形に文字入れてハイパーリンクをセットしたのを2つ作った →これはいいぞ 1000円 もう嫌だ
937 名前:デフォルトの名無しさん mailto:sage [2020/06/20(土) 15:58:25.34 ID:MH9+mSJC.net] 300円とか1000円って何?
938 名前:デフォルトの名無しさん [2020/06/20(土) 16:02:10 ID:wuXUOHn9.net] >>907 改善提案出すとお金貰える仕組みの会社だから トヨタグルーやトヨタ系とかは結構そうじゃないかな
939 名前:デフォルトの名無しさん mailto:sage [2020/06/20(土) 16:08:51.15 ID:MH9+mSJC.net] >>908 単にプレゼンというか説明下手なだけじゃないの?
940 名前:デフォルトの名無しさん [2020/06/20(土) 16:23:05.64 ID:wuXUOHn9.net] >>909 もうマクロに関してそこは諦めたわ if関数使ったりそういう改善のが1000円や1500円で貰えるからそっちでいってる 同僚から組んで欲しいってのも全部断ってる 58歳のパソコンに疎すぎる人に説明する必要性もないかな
941 名前:デフォルトの名無しさん mailto:sage [2020/06/20(土) 17:02:57.89 ID:wVoXfuuE.net] まぁ、「実際の能率の向上」より「誰にでも分かりやすく使い易い」にウエイトが傾いてるってのはよくあることじゃね。 どんな評価方法か知らんけど。 ・直接的に恩恵を受ける人の数 ⇒あくまで例えばだが、>>906 の「3秒マクロ」で仕事が楽になるのが数人しかいない、とか、 「図形2つ」が割と広い範囲で使える上に、他の職場でも応用が利く、とか。 ・柔軟性 ⇒例えば3秒マクロに何かしら元となるデータがあると仮定して、 そのデータを出力するシステムの仕様に変更があった場合対応できなくなる、とか。 他方、図形2つの方は文字どおり図形2つ作って文字入れてハイパーリンクを加えただけなので、 例えば参照先URLなりが変わったとしても、比較的対応が容易だし、 よほどのことがなければ「使えなくなる」ということが考えられない、とか。 ・上司のその時の気分、あるいは好かれ具合 ⇒それな
942 名前:デフォルトの名無しさん mailto:sage [2020/06/20(土) 17:21:32.15 ID:qvmNBmpu.net] >>910 同じような所が10カ所(ファイル)あったら10000円〜15000円もらえるのかな
943 名前:デフォルトの名無しさん mailto:sage [2020/06/20(土) 17:21:48.48 ID:XQZF02H8.net] 相談もなしに勝手なマクロを組んだことで減点対象になったのだろう もしかしたら、その作業は近々システムの変更でなくなる予定だったかもしれない 作業以外の目的があったのかもしれない 残業が多いなと思っていたら、 余計なものを作って遊んでいた、減給されないだけましだろう
944 名前:デフォルトの名無しさん mailto:sage [2020/06/20(土) 17:41:36.37 ID:qvmNBmpu.net] マクロの変更も有識者間でコードレビューして評価報告書提出して上司に確認のサインもらって 修正連絡票回覧するまでやらないとクレームはいったりするよね 知らない間に勝手にマクロが書き換えられていたとか言われたらやばいだろ
945 名前:デフォルトの名無しさん mailto:sage [2020/06/20(土) 18:45:21.31 ID:m9vPjHEn.net] >>906 わかりやすく説明するなり評価方法に基づいたアピールするなりすりゃいいじゃん
946 名前:デフォルトの名無しさん mailto:sage [2020/06/21(日) 05:53:32.39 ID:I80zoHyc.net] お前らの職場って大変そうだな おれんところなんか俺しかVBA触れるやついないから好き放題やってるわ
947 名前:デフォルトの名無しさん [2020/06/21(日) 09:05:05 ID:zpzjHnJy.net] 俺も俺も 初心者に毛が生えた程度の知識だけど周りはPC素人ばかりだからやりたい放題だ
948 名前:デフォルトの名無しさん mailto:sage [2020/06/21(日) 10:08:30.56 ID:7ZJTD4pQ.net] 同じく PCマイスターみたいに見られてるけど、薄々勘付かれているかもしれない
949 名前:デフォルトの名無しさん mailto:sage [2020/06/21(日) 13:43:26.96 ID:/utMrS/w.net] エクセルはそこそこ使いこなせるがマクロは全く知らないってな人に 簡易マクロ作っただけで「ハァ?お前天才かよ?」みたいな反応されるよな。 褒められる優越感と小学生でも書けるコードで褒められる自分へ嫌悪感で 葛藤しまくるよな
950 名前:デフォルトの名無しさん mailto:sage [2020/06/21(日) 14:00:37.96 ID:ANltB6r3.net] いや、別に。
951 名前:デフォルトの名無しさん mailto:sage [2020/06/21(日) 15:15:50.34 ID:0WnnnX3x.net] 両方とも別に
952 名前:デフォルトの名無しさん mailto:sage [2020/06/21(日) 17:39:52.32 ID:1ON8fipo.net] >>919 他の奴らってそもそも業務が違うだろ
953 名前:デフォルトの名無しさん [2020/06/21(日) 17:47:04.76 ID:k1xdFuXh.net] >>922 出来ない正社員と出来るバイトの俺
954 名前:デフォルトの名無しさん mailto:sage [2020/06/21(日) 17:50:26.78 ID:HGSDkuyA.net] >>919 読んでるこっちが恥ずかしい
955 名前:デフォルトの名無しさん mailto:sage [2020/06/21(日) 18:05:28.37 ID:xIpMoW7x.net] スレチだけどPHPは ハイパーテキスト・プリプロセッサだってのに 初歩でも神呼ばわりだぜ 【PHP】下らねぇ質問はここに書き込みやがれ 11 itest.5ch.net/mevius/test/read.cgi/tech/1591334726/96-107 96 > hoge.com/**** >に指定した数字入れて、html出力ってできますか? 103 foreach( 107 >>103 神!おっぱ・(自粛)
956 名前:デフォルトの名無しさん mailto:sage [2020/06/21(日) 19:11:40.34 ID:f7O4FwhH.net] よくメニューに[+]があり、 これを押すと隠してあったメニューが表示されるといった仕組みがあるのですが、 これをエクセルで実現することはできるでしょうか。
957 名前:デフォルトの名無しさん mailto:sage [2020/06/21(日) 19:46:46.68 ID:HGSDkuyA.net] 簡単なのはVisibleプロパティをFalseからTrueにする方法
958 名前:デフォルトの名無しさん mailto:sage [2020/06/21(日) 19:54:02.33 ID:apqHGiEy.net] >>926 ユーザーフォームの使用になる e-tech.life.hyogo-u.ac.jp/contents/kyouzai/vb-ref/contents/part1/button_visible/button_visible.html ユーザーフォームのイベントで条件を記述してやるのが良い
959 名前:デフォルトの名無しさん mailto:sage [2020/06/21(日) 19:54:53.04 ID:jOeQJVeR.net] >>926 グループ化使うとか
960 名前:デフォルトの名無しさん mailto:sage [2020/06/21(日) 20:09:41.65 ID:Ca9zW0qx.net] >>923 100人規模で周りの人達ができない正社員なわけない バイト数人が使う程度のマクロだろ
961 名前:デフォルトの名無しさん mailto:sage [2020/06/21(日) 20:17:13.26 ID:dwey+O0N.net] 俺も大したことできないけど零細で偉そうにしてるわ 人生なんて鶏口牛後で十分なんだよ
962 名前:デフォルトの名無しさん mailto:sage [2020/06/21(日) 21:52:25.43 ID:LN5eNKcO.net] >>930 100人前後の会社で 60人ほど派遣 20人くらいがバイト 10人くらいのパート 正社員は10人ほどのうち確実に7人はエクセルもまともに使えないレベルなのでWord使ってる エクセルを使うのは正社員1人派遣1人バイトの俺 3ヶ月に一度現れる謎の5人組はよく分からない そいつらの給料が月70〜80万円って言ってた 俺のバイト代は月12万円くらいだった この国はおかしいって狂ってるよ
963 名前:デフォルトの名無しさん mailto:sage [2020/06/21(日) 22:06:48.15 ID:jOeQJVeR.net] 大して優秀なわけでもないやつがちょっと優位な部分があるだけで周りを見下すあるある
964 名前:デフォルトの名無しさん mailto:sage [2020/06/22(月) 00:04:33.28 ID:CPlWdThO.net] >>932 Excel vba ができる人が少ないのは会社の重要な業務ではないからだろ エクセルはあくまで補助的な使い方しかしてないんじゃねーの
965 名前:デフォルトの名無しさん mailto:sage [2020/06/22(月) 00:17:00.59 ID:W8AXf1Mi.net] 採用条件に入ってないし学校やパソコン教室でも普通は教えないからできないのが普通 そもそもプログラミングとは何か、どういう場面で使うと便利なのかもわかってない人が大半 うっかり省力化すると事務員の首が飛ぶから、人の心があれば黙ってるものだし
966 名前:デフォルトの名無しさん mailto:sage [2020/06/22(月) 01:24:44 ID:CPlWdThO.net] 一般的なプログラミングの話をするならExcelは不向き そもそも表計算ソフトの延長でしかない
967 名前:デフォルトの名無しさん mailto:sage [2020/06/22(月) 02:04:25.88 ID:6UseFZdn.net] >>934 はいその通りです。 【60代パート】リングファイルを棚にしまう 【社長】ハンコついてパートに渡す <
968 名前:br> 【60代パート】Wordから印刷して社長の机に置く 【50代課長】エクセルからWordにコピペしたファイル名とフォルダをパートに指示 【20代大卒美人派遣】エクセルで原価計算して課長に渡す 【30代バイト】梱包出荷伝票をエクセルに打込み [] [ここ壊れてます]
969 名前:デフォルトの名無しさん mailto:sage [2020/06/22(月) 02:11:43.53 ID:NG7/h+3B.net] >>937 多分そういうこと言ってるわけじゃないと思うぞ
970 名前:デフォルトの名無しさん [2020/06/22(月) 02:30:48 ID:6UseFZdn.net] >>938 え? Excel vba を仕事にするのが会社の重要な業務である業界ってどこですか?
971 名前:デフォルトの名無しさん mailto:sage [2020/06/22(月) 03:23:12.33 ID:CPlWdThO.net] >>939 お前の会社は何の業界の会社だよw 例えば30代のバイトが梱包している作業のほうが会社にとって利益をもたらすんじゃないのか
972 名前:デフォルトの名無しさん mailto:sage [2020/06/22(月) 08:49:37 ID:no76adsC.net] ヨコレスだけど30代に梱包やらせる会社とか潰れちまえ 頭も体も回る年代なんだから大いに無駄な事やらせた方がいいと思うね 年食って手数よりも口数のほうが多くなってきたら梱包に回せ
973 名前:デフォルトの名無しさん [2020/06/22(月) 10:07:31.70 ID:lKh0OPb2.net] では無能な30代には何をやらせれば良いのだ?
974 名前:デフォルトの名無しさん mailto:sage [2020/06/22(月) 10:18:08.71 ID:f1XJDlES.net] バイトに雑用させるのは普通だし年齢関係ないわ
975 名前:デフォルトの名無しさん mailto:sage [2020/06/22(月) 10:44:00.06 ID:i2ShoQV/.net] VBAスレなのにバイトの仕事がどうのって話になってて、さすがだなっておもいましたwww
976 名前:デフォルトの名無しさん mailto:sage [2020/06/22(月) 10:45:26.13 ID:DpiCYHaq.net] vbaってプログラミングなの?
977 名前:デフォルトの名無しさん mailto:sage [2020/06/22(月) 11:16:34 ID:DTKm8QVZ.net] プログラミングじゃなかったらなんなんだ 物書きか?
978 名前:デフォルトの名無しさん mailto:sage [2020/06/22(月) 11:19:23 ID:DpiCYHaq.net] Excel関数の延長?
979 名前:デフォルトの名無しさん mailto:sage [2020/06/22(月) 12:06:22.79 ID:f1XJDlES.net] 正式な定義を知りたきゃMS公式でも見ればいいだろ…
980 名前:デフォルトの名無しさん mailto:sage [2020/06/22(月) 12:10:34.37 ID:DpiCYHaq.net] 申し訳ありませんでした
981 名前:デフォルトの名無しさん [2020/06/22(月) 12:26:25 ID:qDFuj4q3.net] 馬鹿ばっか
982 名前:デフォルトの名無しさん [2020/06/22(月) 18:17:44 ID:es1/qSoW.net] 一年限定で異動してきた職場 噂に聞いてたけど想像を絶するところだった エクセル使う業務がほとんどなのに 関数使える人が数人、まともな人は確かにいる ふとみたおっさんはエクセルの表の合計を電卓で足してキーボードでそれを打ち込 ふとおばちゃん達は 「ここ選択してイコールの後にアルファベットと数値と同じ数値が反映される」 「えー!そうなの?」 と会話してる マクロ以前の問題だった
983 名前:デフォルトの名無しさん mailto:sage [2020/06/22(月) 18:44:26 ID:CPlWdThO.net] 管理者が無能だと会社がなくなる 管理者が有能なら無能な人材に高い給料は出さない
984 名前:デフォルトの名無しさん mailto:sage [2020/06/22(月) 19:03:11 ID:f1XJDlES.net] 周りは出来ない語りしてもお前が優秀になれるわけじゃないんだよなぁ
985 名前:デフォルトの名無しさん mailto:sage [2020/06/22(月) 23:08:43.37 ID:eYhHFxw6.net] VBAでイキるの面白すぎるからやめて
986 名前:デフォルトの名無しさん mailto:sage [2020/06/22(月) 23:16:11.85 ID:R2BScS4S.net] やめたら面白くないだろ
987 名前:デフォルトの名無しさん mailto:sage [2020/06/23(火) 00:55:19 ID:TulROOqi.net] 30代の梱包バイトのおばちゃんがVBAできないとか比較する方がおかしい
988 名前:デフォルトの名無しさん mailto:sage [2020/06/23(火) 01:00:04 ID:bSgedWTD.net] VBA素人です というか、ちょっとだけPHPを書いたことがある程度のプログラム初心者です セルA1:A5のどこか一箇所に値を入力すれば全てのセルが埋まるようにしたいのです 全てのセルには入力された値に対して決まったパーセンテージをかける たとえばA1に100と入力されたらA2~5にはそれぞれA1*○%(○はA2~5とも異なる) A2に100と入力されたらA1及びA3~5にそれぞれA2*○% 多分条件分岐でいうと if A1が空白でないならA1には入力した値、A2*○%、A3*○%・・・ elseif A2が空白でないなら・・・ みたいな
989 名前:感じになるのかなと思うのですが冗長ですよね… do Whileで書けるのか、他にスマートな書き方があるのか見当がつきません フォームでどのセルに入力するか選んで値を入れてボタンを押すと 全てのセルが埋まる、というのが理想です アドバイスを頂けたらありがたいです よろしくおねがいします [] [ここ壊れてます]
990 名前:デフォルトの名無しさん mailto:sage [2020/06/23(火) 01:09:31.87 ID:kv8byCI9.net] for r=1 to 5 if 入力されたセルじゃない場合 cells = 入力された数値かける定数 end if next みたいな感じでは?
991 名前:デフォルトの名無しさん mailto:sage [2020/06/23(火) 01:33:11.82 ID:kv8byCI9.net] あー、これじゃダメみたい、すみません。
992 名前:デフォルトの名無しさん [2020/06/23(火) 01:53:19.74 ID:bE26MwSl.net] >>957 ちょっとだけとか書くなよ 全くわかっていない馬鹿だろうが
993 名前:デフォルトの名無しさん mailto:sage [2020/06/23(火) 02:25:19.01 ID:akfNW9d5.net] 入力セルによらず割合が一定なら100%の値を出してからそれをループで入れろバカか
994 名前:デフォルトの名無しさん mailto:sage [2020/06/23(火) 03:24:31 ID:TulROOqi.net] >>957 俺なら入力は1か所(A1)だけにして A2〜A5 は 入力させない or "=A1" にでもするかもな
995 名前:デフォルトの名無しさん mailto:sage [2020/06/23(火) 05:39:38.41 ID:BwhdgQkj.net] >>957 ユーザーフォームにリストボックスとテキストボックスとコマンドボタンを作成し以下 Dim val As Double Private Sub UserForm_Initialize() With ListBox1 .AddItem "A1" .AddItem "A2" End With End Sub Private Sub CommandButton1_Click() If UserForm1.ListBox1.Value="A1" then val = UserForm1.TextBox1.Value A1 Else If UserForm1.ListBox1.Value="A2" then val = UserForm1.TextBox1.Value A2 End If End Sub Sub A1() Range("A1").value=val Range("A2").value=val*0.2 Range("A3").value=val*0.3 Range("A4").value=val*0.4 Range("A5").value=val*0.5 End Sub Sub A2() Range("A1").value=val*0.1 Range("A2").value=val Range("A3").value=val*0.3 Range("A4").value=val*0.4 Range("A5").value=val*0.5 End Sub
996 名前:デフォルトの名無しさん mailto:sage [2020/06/23(火) 07:50:59.28 ID:xSXJEKQO.net] 意図が伝わるようにユーザーフォームで入力させた方がいいように見えるな visibleのtrue ,false切り替えでうまくやりたい
997 名前:955 mailto:sage [2020/06/23(火) 09:36:33.10 ID:bSgedWTD.net] ご教示下さったみなさまありがとうございます >>963 丁寧にありがとうございます 書いて頂いたのでなんとかなりそうです
998 名前:デフォルトの名無しさん mailto:sage [2020/06/23(火) 10:14:19.39 ID:eVy5K5L9.net] コピペ
999 名前:961 [2020/06/23(火) 12:34:05.64 ID:5v5sJ6te.net] >>965 スマホで寝ながら打ったから Win7のExcel2010にコピペして確認してみたらミスってた 訂正。大文字だったスマソ then>Then https://i.imgur.com/LQvQjn9.png
1000 名前:デフォルトの名無しさん mailto:sage [2020/06/23(火) 13:08:23.25 ID:AqGxlhQk.net] VBEが勝手に大文字に直してくれるから、ステートメントは全部小文字で入力してるわ
1001 名前:デフォルトの名無しさん mailto:sage [2020/06/23(火) 16:26:51.99 ID:lLVW3adv.net] UsedRangeの使えなさに絶望しました あれってなに目的で使えんの? >>968 おれもそれチェック代わりに使ってるんで 変数はほぼ全て大文字スタートだわ 他言語だとやらないけどVBAはエディタがあれなんで
1002 名前:デフォルトの名無しさん mailto:sage [2020/06/23(火) 17:18:02.36 ID:JWFUfSAs.net] >>969 間違った使い方してるだけじゃないのか
1003 名前:デフォルトの名無しさん mailto:sage [2020/06/23(火) 18:21:08.83 ID:coVE1fyX.net] >>969 グラフ自動生成するときとかに使ってる
1004 名前:デフォルトの名無しさん mailto:sage [2020/06/23(火) 18:22:23.82 ID:z7FZNG3t.net] usedrangeはファイルの中身を検査する時に使うな 個人情報が入ってないかとか
1005 名前:デフォルトの名無しさん mailto:sage [2020/06/23(火) 18:28:15.83 ID:X4/0OZ1g.net] UsedRangeは普通に使うぞ。 寧ろ、一番使うかも。 Excelの固定じゃない範囲を取得する場合、これでOKというようなものが無い。 都度考えることになる。
1006 名前:デフォルトの名無しさん mailto:sage [2020/06/23(火) 21:35:23 ID:LvHFRgi0.net] 値化とか
1007 名前:デフォルトの名無しさん mailto:sage [2020/06/23(火) 21:40:15 ID:LvHFRgi0.net] 2次元の動的配列にバックデータを突っ込むときに使う
1008 名前:デフォルトの名無しさん mailto:sage [2020/06/23(火) 22:16:19.70 ID:zDUcrbEK.net] やっと念願の夢かなって生産現場に異動できそう PCをあまり使わなくなる職場にいけるから マクロ組んだりもほとんどしなくて済むから嬉しすぎる そしてここで教えてくれた人たちへの恩も忘れられんよ
1009 名前:デフォルトの名無しさん mailto:sage [2020/06/23(火) 22:27:25.32 ID:UicElvK7.net] ひでぇなぁ忘れられちゃうのかぁ残念 汗だくの梱包現場からエアコン効いた部屋に行きたいよ
1010 名前:デフォルトの名無しさん [2020/06/24(水) 10:22:12 ID:XfIA0IcT.net] Sub Sample1() Dim Target As Range Set Target = Range("P:P").FiVBA エラー 91 これで オブジェクト変数または With ブロック変数が設定されていません。t.Offset(0, 1) End Sub 何がだめ?
1011 名前:デフォルトの名無しさん mailto:sage [2020/06/24(水) 10:26:15 ID:7kmsZdqz.net] FiVBAって命令あるの?
1012 名前:デフォルトの名無しさん mailto:sage [2020/06/24(水) 13:23:42.08 ID:hNjrAS7L.net] tってなんだよ 宣言してないオブジェクト変数が動くわけないだろ
1013 名前:デフォルトの名無しさん mailto:sage [2020/06/24(水) 13:58:43 ID:LpqCs0qI.net] なにがだめって聞かれても全てがとしか
1014 名前:デフォルトの名無しさん mailto:sage [2020/06/24(水) 14:29:06 ID:jVCudKEf.net] ちゃんと内容を確認しないのが駄目
1015 名前:デフォルトの名無しさん [2020/06/24(水) 14:58:07.29 ID:ec8khzg7.net] ごめん間違えた これです Sub Sample1() Dim Target As Range Set Target = Range("P:P").Find(What:="田中") MsgBox Target.Offset(0, 1) End Sub
1016 名前:デフォルトの名無しさん mailto:sage [2020/06/24(水) 15:31:45.69 ID:7kmsZdqz.net] >>983 https://www.moug.net/tech/exvba/0050116.html ここでも参考にしな まず確実に言えるのは、Nothingのエラー対処ができてない
1017 名前:デフォルトの名無しさん mailto:sage [2020/06/24(水) 16:03:07.42 ID:A95Qwidx.net] >>983 田中がないんだろどうせ
1018 名前:デフォルトの名無しさん [2020/06/24(水) 16:11:20.98 ID:ec8khzg7.net] Set Target = Range("P:P").Find(What:="田中") この田中を変数というか特定のセルの値にしたい場合どうしたらいい? A1のセル内容を参照したいとする
1019 名前:デフォルトの名無しさん [2020/06/24(水) 16:18:53 ID:ec8khzg7.net] あ、できた ごめん自分は京都大学霊長類研究所のジェームズという7歳のチンパンジーだからVBAよくわからないんだ 皆さんありがとございまうす
1020 名前:デフォルトの名無しさん [2020/06/24(水) 16:21:57 ID:4/s69xMY.net] >>987 解決内容を書けチンパンジー
1021 名前:デフォルトの名無しさん mailto:sage [2020/06/24(水) 17:53:24 ID:A95Qwidx.net] 自己紹介や自分語りはいらん
1022 名前:デフォルトの名無しさん mailto:sage [2020/06/24(水) 19:08:49.57 ID:Ra7WLueW.net] >>986 Nothingのエラ―対処が出来て無いってのはみんなが通る道だ。
1023 名前:デフォルトの名無しさん [2020/06/24(水) 19:26:45 ID:aYj5R9EO.net] 自分で使う分にはエラー終了でも正常終了でも変わらんし
1024 名前:デフォルトの名無しさん [2020/06/25(木) 14:24:07.38 ID:UL1INOQI.net] In Range("R:R") というのがあるとして R列全体を選択するのはマストなんだけど ホントはR7からソレ以下全部にしたい In Range("R7:R")ではうまく行かないみたいだしこういう場合ってどうしたらいいんだろう
1025 名前:デフォルトの名無しさん [2020/06/25(木) 14:52:26.82 ID:fOnLoXil.net] usedrangeじゃ駄目なんですか?
1026 名前:デフォルトの名無しさん mailto:sage [2020/06/25(木) 15:35:07.92 ID:eDJAI9Nl.net] テーブルにすれば?
1027 名前:デフォルトの名無しさん mailto:sage [2020/06/25(木) 15:38:48.25 ID:emOdy//g.net] cellsでそこから最終行まで指定すればいいじゃない
1028 名前:デフォルトの名無しさん mailto:sage [2020/06/25(Thu) 16:00:07 ID:eepaDL1r.net] colmns.countが最終桁番号だしApplication.Intersectで指定2範囲の重複部分だせるし
1029 名前:デフォルトの名無しさん mailto:sage [2020/06/25(木) 16:24:03.44 ID:oGWS7APt.net] 直感的にやるならRange(Range("R7"),Range("R7").End(xlDown))でいいんじゃない
1030 名前:デフォルトの名無しさん mailto:sage [2020/06/25(Thu) 17:54:02 ID:xz2BRr
] [ここ壊れてます]
1031 名前:37.net mailto: >>992 何故最終行までという指定を省こうとするのか? 先に真っ当な手順で実現できてないのに想像で勝手に省いてうまくいかないってどういうつもりなのか? [] [ここ壊れてます]
1032 名前:デフォルトの名無しさん mailto:sage [2020/06/25(Thu) 17:54:59 ID:orhJfehX.net] きたこれ VBA歴2ヶ月なのに俺は職場のPCの先生から神様扱い
1033 名前:デフォルトの名無しさん [2020/06/25(Thu) 18:26:51 ID:BKkovaqh.net] 何そのダメ先生
1034 名前:デフォルトの名無しさん mailto:sage [2020/06/25(Thu) 18:32:44 ID:0L1EfJ/H.net] おだてられて浮かれてるだけだなw
1035 名前:デフォルトの名無しさん mailto:sage [2020/06/25(Thu) 18:45:05 ID:goJhPQKd.net] うー
1036 名前:1001 [Over 1000 Thread .net] このスレッドは1000を超えました。 新しいスレッドを立ててください。 life time: 46日 5時間 1分 20秒
1037 名前:過去ログ ★ [[過去ログ]] ■ このスレッドは過去ログ倉庫に格納されています