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/ ※デフォルト設定
658 名前:デフォルトの名無しさん mailto:sage [2020/06/08(月) 20:28:42.90 ID:pW+OOibM.net] 構造体のメンバ変数を頭からindexで指定するようなことってできませんか? for文で構造体のメンバ変数と配列とを順次比較したいんですが。
659 名前:デフォルトの名無しさん mailto:sage [2020/06/08(月) 20:28:54.07 ID:WKHI6Xr1.net] 変数名やプロシージャ名を日本語で書くか否か迷ってます 日本語命名で困ったことが起こった人はいますか
660 名前:デフォルトの名無しさん [2020/06/08(月) 20:30:33.47 ID:ckk4P3me.net] >>631 少しは頭を使えよ、馬鹿
661 名前:デフォルトの名無しさん [2020/06/09(火) 00:06:52.26 ID:GDblTDVr.net] >>634 頭使ったらハゲるだろ、このハゲ
662 名前:デフォルトの名無しさん [2020/06/09(火) 00:40:35.48 ID:4DWGZxBT.net] ちょっとトンチンカンかもしれないですが WindowsのエクセルのVBAって LinuxのOpen OfficeのCalcでも使えたりするんでしょうか?
663 名前:デフォルトの名無しさん mailto:sage [2020/06/09(火) 01:33:20.60 ID:dgDUMn0q.net] >>633 あるぞ 英語環境しかないPCだと使えなくなる 人に送ったら面倒になった
664 名前:デフォルトの名無しさん mailto:sage [2020/06/09(火) 03:31:53.35 ID:eSuxcQl/.net] >>633 うちが英語とスペイン語環境しかなくて送られてきたVBAが動かなくて困った事が何度もある 日本人だからって日本語環境でやってるわけではない
665 名前:デフォルトの名無しさん mailto:sage [2020/06/09(火) 03:41:28 ID:eSuxcQl/.net] >>636 ExcelVBAはWinとMacでも違いがある Win/Mac/Linuxで使えるOOoやLOのCalcで使えるVBAは制限やできない事があるけど一応使える
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個とか作ってるんじゃないよな