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/ ※デフォルト設定
587 名前:デフォルトの名無しさん mailto:sage [2020/06/07(日) 01:27:02 ID:MDOjbT3v.net] また馬鹿が来た
588 名前:デフォルトの名無しさん mailto:sage [2020/06/07(日) 01:42:25 ID:Dw2BAEV/.net] 消さなきゃいんじゃないの…
589 名前:デフォルトの名無しさん mailto:sage [2020/06/07(日) 01:51:41 ID:czcu/Wo5.net] 1回目、2回目とボタンを押すごとにA列を下方向に順に記録させたいのです。 説明が悪いかも、すみません
590 名前:デフォルトの名無しさん mailto:sage [2020/06/07(日) 02:00:00 ID:81VYwWTh.net] 色々やり方があるが回数を持たせるのが簡単だろうな
591 名前:デフォルトの名無しさん mailto:sage [2020/06/07(日) 02:00:43 ID:Dw2BAEV/.net] その通り表示させるセル変えればいんじゃないの…
592 名前:デフォルトの名無しさん mailto:sage [2020/06/07(日) 02:16:26 ID:MDOjbT3v.net] >>565 馬鹿過ぎて話しにならない こんなのがわからないような馬鹿には色々無理
593 名前:デフォルトの名無しさん mailto:sage [2020/06/07(日) 02:44:14 ID:81VYwWTh.net] >>568 初心者ってこんなもんだろ
594 名前:デフォルトの名無しさん [2020/06/07(日) 03:03:21.76 ID:zKcEsa3T.net] 初心者は全部同じというゆとり理論
595 名前:デフォルトの名無しさん mailto:sage [2020/06/07(日) 03:47:02 ID:kmJ+/rqz.net] >>565 A列の最終行を探して次の行に数を入れる
596 名前:デフォルトの名無しさん mailto:sage [2020/06/07(日) 03:48:37 ID:kmJ+/rqz.net] 最終行は値の入ってる最後って意味ね
597 名前:デフォルトの名無しさん mailto:sage [2020/06/07(日) 05:24:32.66 ID:cf9XL00M.net] まずは「1ー100」をマトモに書けるようになるのが先決だな
598 名前:デフォルトの名無しさん mailto:sage [2020/06/07(日) 05:49:46 ID:dyM/5p3V.net] >>545 再帰はスマートに書けることも多いけど再帰の数だけメモリを消費する ファイル列挙みたいな大量になりかねないデータを扱う場合はおすすめできない 時間的にもメリットがないどころか下手すると遅くなり得る 列挙程度のどうでもいいような処理に使うべきじゃないよ
599 名前:デフォルトの名無しさん mailto:sage [2020/06/07(日) 07:38:47 ID:czcu/Wo5.net] >>571 は!なるほど!! ありがとうございます!! 皆様もありがとうございます!精進します!
600 名前:デフォルトの名無しさん mailto:sage [2020/06/07(日) 07:53:48 ID:MHP0r7Cu.net] >>574 〉ファイル列挙みたいな大量になりかねないデータを扱う場合はおすすめできない じゃあこの場合どう処理するの?
601 名前:デフォルトの名無しさん mailto:sage [2020/06/07(日) 07:56:27 ID:ntu7XVDq.net] コマンドプロンプトで十分だと思うけど。 VBAでやると、ファイル名に特殊文字が使われていた時に止まって地味にウザい。
602 名前:デフォルトの名無しさん mailto:sage [2020/06/07(日) 08:33:05.30 ID:xH2ID0fk.net] >>574 何でこんな頓珍漢な指摘が出てくるんだろうね。 そんな話じゃないだろうに。 自然に再帰になるという例であって、問題あるなら辞めれば良いだけのこと。 それに、そのメモリ消費だが下手くそな組み方だったらその通りだが、そんな組み方しないでしょ。 >>577 何の為にファイル列挙してると思ってんの? それで終わりの筈が無いだろうw
603 名前:デフォルトの名無しさん mailto:sage [2020/06/07(日) 08:38:56.41 ID:ntu7XVDq.net] >>578 だからなに? コマンドプロンプトで出力したものは再利用できないとでも?
604 名前:デフォルトの名無しさん mailto:sage [2020/06/07(日) 09:55:56 ID:kdiJvE9H.net] >>560 さんきゅ
605 名前:デフォルトの名無しさん mailto:sage [2020/06/07(日) 13:01:44.81 ID:H9nBLvae.net] >>577 > VBAでやると、ファイル名に特殊文字が使われていた時に止まって地味にウザい。 それお前のコードがバグってるだけだろw
606 名前:デフォルトの名無しさん mailto:sage [2020/06/07(日) 13:10:29.47 ID:xH2ID0fk.net] >>579 出来るに決まってんだろw でも、それを良しとするか? マトモに書ける奴は良しとはしないだろ。 仕方なしにはするけど。
607 名前:デフォルトの名無しさん mailto:sage [2020/06/07(日) 13:12:52.96 ID:xH2ID0fk.net] >>581 いや、これはあり得る。 多分回避も出来るけど、そこ迄考えるのは面倒いので。 問題が起こったら何とかするか、その名前は無理と言うかも。 何しろVBA以外でもトラブルの元なので。
608 名前:デフォルトの名無しさん mailto:sage [2020/06/07(日) 15:02:44.03 ID:bx1NUQ41m] >>518 解析かな?→python
609 名前:デフォルトの名無しさん mailto:sage [2020/06/07(日) 15:23:54.63 ID:H9nBLvae.net] >>583 具体的なこと書かないであり得るとか言われてもなぁw
610 名前:デフォルトの名無しさん mailto:sage [2020/06/07(日) 16:37:31 ID:ntu7XVDq.net] >>582 知らねえよ。 お勧めできないならこれで良いだろって代替案出しただけで。 >>585 「特殊文字」は具体的じゃないのかよ。 何の文字かまでいちいち書いてあげないと納得しないか?
611 名前:デフォルトの名無しさん mailto:sage [2020/06/07(日) 17:05:54 ID:odk7pmo/.net] ファイル名に使えるのにVBAで扱えない文字なんて心当たりがないので、ぜひ具体的な文字を教えてくれ
612 名前:デフォルトの名無しさん mailto:sage [2020/06/07(日) 17:48:58 ID:EhPxLCve.net] おすすめの教本ありますか?
613 名前:デフォルトの名無しさん mailto:sage [2020/06/07(日) 17:49:37 ID:H9nBLvae.net] >>586 > 「特殊文字」は具体的じゃないのかよ。 どこが具体的なんだよw > 何の文字かまでいちいち書いてあげないと納得しないか? 文字と何をして止まるのかを書かないとね まあ書けないと思うけど
614 名前:デフォルトの名無しさん mailto:sage [2020/06/07(日) 18:20:31.92 ID:s05OkEKn.net] >>588 記録したソースを弄った方が早い どうしても本が欲しいというなら、出来るだけ完成したソースがたくさん載ってる本がいい
615 名前:デフォルトの名無しさん mailto:sage [2020/06/07(日) 18:34:00.18 ID:Rq/eP/Hm.net] VBAでは無いけれど 今回のオンライン申請では氏名の間に空白スペースがあったり 住所のハイフンなんかでエラーだったよ 山 田 花 子 山田 花子 山田 は な 子 11-20-13 十一一二十ー十三 一丁目 II ノ丘 ハイツ III 一- 弐- 三
616 名前:デフォルトの名無しさん mailto:sage [2020/06/07(日) 18:53:28.87 ID:H9nBLvae.net] だから何? それそういう仕様なんだろ(まあバグかもしれんが)
617 名前:デフォルトの名無しさん mailto:sage [2020/06/07(日) 18:56:58.14 ID:ntu7XVDq.net] >>589 ああ、確かに特殊文字じゃ書けないわな。 |あいうえお 一番左にカーソルがある状態。 あ|いうえお 1回右を押す あい|うえお 2回右を押す あい|うえお 3回右を押す ←2回目と3回目が変わらない。こういう状態になる文字だよ。 あいう|えお 4回右を押す あいうえ|お 5回右を押す これで満足か?
618 名前:デフォルトの名無しさん mailto:sage [2020/06/07(日) 19:05:10.46 ID:ntu7XVDq.net] >>587 特殊以外だと、日本語環境で中国語とか。
619 名前:デフォルトの名無しさん mailto:sage [2020/06/07(日) 19:26:44 ID:eHR7BWdB.net] >>591 それ例ではスペースとかハイフン無いのに入力してエラーのパターンでは
620 名前:デフォルトの名無しさん mailto:sage [2020/06/07(日) 19:30:43 ID:H9nBLvae.net] >>593 もしかしてカーソルが「止まる」とか言ってたのか? 想像以上に低レベルだったなw
621 名前:デフォルトの名無しさん mailto:sage [2020/06/07(日) 20:18:15 ID:ZURHSwDA.net] そういえばADOを使ったcsv取り込み機能でうちの業務システムから出力したcsvファイルを取り込んだらエラーが出たことあったな。 ファイル名変えたら取り込めたけど。
622 名前:デフォルトの名無しさん mailto:sage [2020/06/07(日) 20:32:18 ID:1v0hAbPt.net] >>596 >>594 オイオイ、♬みたいな奴だろ。 文字列変数で受けると?になっちまうんだ。
623 名前:582 mailto:sage [2020/06/07(日) 20:50:04 ID:1v0hAbPt.net] ファイル名に?が入ったまま何かの処理をすればエラ―吐いて止まるというのは考えられる。 というか、何で俺が解説しなきゃならねえんだよ。 頼むぜw
624 名前:582 mailto:sage [2020/06/07(日) 20:56:23 ID:1v0hAbPt.net] >>591 そいつはレベルが低いな。 スペースなんて正式な住所や氏名にはあり得ねえとして、入力したもんから片っ端から抜いちまう処理を入れるもんだ。 ハイフンはちょっとあり得る。 普通はマイナス使うと思うんだが罫線記号使ったり似たのがいっぱいあるからな。
625 名前:デフォルトの名無しさん mailto:sage [2020/06/07(日) 21:55:32.54 ID:XVHV5xvT.net] これだな >Excel VBA 質問スレ Part43 >274 名前:デフォルトの名無しさん[] 投稿日:2016/12/02(金) 22:33:29.62 ID:rRSQCExt [1/2] >ちょっと質問 > >・おもむろにファイルエクスプローラを開く >・なんでもいいからファイルのプロパティを開く >・そこの作成日時をドラッグする >・セルのA1にペーストする > >例えば 2013?年?12?月?1?日、??17:02:28 >これを(すでに文字化けしてると思うが) >2013/12/1 17:02:28 >に整形したいんだけど >どうすればいいんだ? >半角に見えるけどサクラでみるとU+200Fとなっている >中には数値の間にも混入しているのもある >最初からFSOで取得するのは無しで >すでに手動で取り込んだ数百件ものデータなんだ >よろしくお願いします
626 名前:デフォルトの名無しさん mailto:sage [2020/06/07(日) 22:23:02.67 ID:QPxy+dct.net] 再現しないぞ
627 名前:デフォルトの名無しさん mailto:sage [2020/06/07(日) 22:44:34.20 ID:Zvt1FY8k.net] >>600 そりゃ、住基ネットのデータベースが インターネットからは参照不能で 全国の一般の素人が入力する事を想定した設計に無理があったんでしょ。
628 名前:デフォルトの名無しさん [2020/06/07(日) 23:18:32 ID:kciisc/v.net] 前スレでここで教えて貰ったのが完成した 課のみんなのPCに入れて使いたいらしい パス指定するタイプだから ・読取専用にする ・プロジェクトプロパティをロック ・C直下に置いてショートカットをデスクトップに置いてやる ・シート名は変えるなと徹底 こんだけ教えとけばまぁ大丈夫だよね?
629 名前:デフォルトの名無しさん mailto:sage [2020/06/07(日) 23:22:24 ID:wDFSrhzA.net] セルの行と列の変数名って業務でよく使うんだけど Dim r As Long '行 Dim c As Long '列 これで癖付けてっていいですか?いいですよね?
630 名前:デフォルトの名無しさん mailto:sage [2020/06/07(日) 23:26:23 ID:Zvt1FY8k.net] >>604 何が完成したのやら レス番を貼るか概要を書いて貰わないとわからん
631 名前:デフォルトの名無しさん mailto:sage [2020/06/07(日) 23:35:39.43 ID:Zvt1FY8k.net] >>605 そのコード読むのが自分だけか複数人かでメンテしだいじゃ無いの
632 名前:デフォルトの名無しさん mailto:sage [2020/06/08(月) 01:11:56 ID:VAdCiuLB.net] >>598 確認した 変数で受ける以前の問題だな DirとかいまだにUnicode対応されてないのか だったら8.3形式で返せばいいのにな
633 名前:デフォルトの名無しさん mailto:sage [2020/06/08(月) 07:02:43 ID:upiiQwtH.net] >>608 ググるとFileSystemObject使えって書いてあるな
634 名前:582 mailto:sage [2020/06/08(月) 07:46:04 ID:ACGXca97.net] >>609 でも、変数で受けちまうと何使っても?になっちまうよ。 それにFileSystemObjectのファイル列挙は糞遅かった筈。 特別な理由が無いならエラーで抜けちまって、特殊なファイル名には非対応とメッセージ出した方が良い気がする。
635 名前:582 mailto:sage [2020/06/08(月) 08:00:05.61 ID:ACGXca97.net] >>603 少し住所を扱う処理を動かせば直ぐに気付くレベルの話だよ。 特にスペースなんて人名や住所以外でもよくある話。 全角だろうが半角だろうが""に変換しちまうのはよくやるだろう。 まあ、全角半角は数字とかアルファベットでも問題になるからその前に
636 名前:StrConv使って統一するとかが普通の処理だろう。 ハイフンだって思いつくものはマイナスに変換する程度のことはする。 [] [ここ壊れてます]
637 名前:デフォルトの名無しさん mailto:sage [2020/06/08(月) 08:12:22 ID:/JIEFRnW.net] むしろテキストボックスのEN_UPDATEでスペースやハイフンを消せば楽 郵便番号欄は数字以外受け付けないようにスタイル指定するだけでもいい
638 名前:デフォルトの名無しさん mailto:sage [2020/06/08(月) 08:46:24.73 ID:k1oezjz2.net] フォルダを指定し、そのフォルダ内の全てのブックの、各ブックのシート"sire"の2行目から最終行をコピーして シートcompの最下行の一つ下に張り付けていき、I列に各ブック名を記入していくマクロを教えてください。 Sub comp() 'フォルダを選択 Dim path As String Dim r As Long Dim buf As String Dim i As Long Dim filename As String Dim mysheet As Worksheet Dim srcbook As Workbook Dim srcsheet As Worksheet With Application.FileDialog(msoFileDialogFolderPicker) If .Show = 0 Then MsgBox "キャンセルされました。" Exit Sub End If path = .SelectedItems(1) End With Application.ScreenUpdating = False
639 名前:デフォルトの名無しさん mailto:sage [2020/06/08(月) 08:47:00.39 ID:k1oezjz2.net] 続き Range("A1").Value = "担当者" Range("B1").Value = "行程1" Range("C1").Value = "件名1" Range("D1").Value = "行程2" Range("E1").Value = "件名2" Range("F1").Value = "行程3" Range("G1").Value = "件名3" Range("H1").Value = "期間" Range("I1").Value = "グループ名" Set mysheet = ThisWorkbook.Worksheets("comp") Debug.Print myseet buf = Dir(path & "\*.xls") 'フォルダ内の全ファイル名 Debug.Print buf Do While buf <> "" Set srcbook = Workbooks.Open(path & "\" & buf) Set srcsheet = srcbook.Worksheets("sire")
640 名前:デフォルトの名無しさん mailto:sage [2020/06/08(月) 08:47:32 ID:k1oezjz2.net] 続き filename = 'srcsheetの拡張子なしのファイル名を取得 'シートの内容を2行目以降コピー srcsheet.Range(Cells(2, 8), Cells(Cells(Rows.Count, 1).End(xlUp).Row, 8)).Copy 'myseetの最下行の一つ下に値として貼り付け mysheet.Cells(Cells(Rows.Count, 1).End(xlUp).Row + 1, 1).PasteSpecial xlPasteValues 'I列にそれぞれのファイル名を入力 For r = Cells(Rows.Count, 9).End(xlUp).Row + 1 To Cells(Rows.Count, 1).End(xlUp).Row Range("I" & r).Value = filename Next r srcbook.Close False buf = Dir() Loop Cells.EntireColumn.AutoFit Application.ScreenUpdating = True End Sub
641 名前:デフォルトの名無しさん mailto:sage [2020/06/08(月) 10:43:42 ID:pUpXY1nL.net] ワークシートの指定について Activesheetだと動いて、worksheets(index)やworksheets("シート名")にするとプログラムが動かないことが多いのですが、何故でしょうか 下のようなプログラムを作りました。(Sheet2のA列の数字でSheet1にフィルターをかけて、pdf出力を繰り返す) Sub Macro3() For Each c In Worksheets("Sheet2").Range("A1:A68") i = c.Value a=1 Worksheets(1).Range("$B$4:$N$6492").AutoFilter Field:=1, Criteria1:=i Worksheets(1).PageSetup.RightHeader = " " & i r = Range("$B$5:$B$6492").Find(i).Row Worksheets(1).ExportAsFixedFormat Type:=xlTypePDF, Filename:="C:\Users\Documents" & i & "." & Cells(r, 11).Value Next c End Sub これを実行しても、フィルターがかからず、pdf出力メソッドの部分でエラーが起きます。 しかし、Worksheets(1) を Activesheetに直して、Sheet1をアクティブにした状態で動かすと正常に動きます。 イミディエイトウィンドウでWorksheets(1)が正しく指定されているかも確認しましたが、されていました。 一体何が原因なのでしょうか。
642 名前:デフォルトの名無しさん mailto:sage [2020/06/08(月) 11:07:13 ID:FM/y1B8a.net] >>616 入力ミスがないとして、この2箇所でシートの指定が抜けてるのが原因では Range("$B$5:$B$6492").Find(i).Row Cells(r, 11).Value 何度もWorksheets(1)を書くんじゃなくて、Forの外でActivateするかWithでSheet1を指定した方が間違いがなくていいと思う
643 名前:デフォルトの名無しさん mailto:sage [2020/06/08(月) 11:07:50 ID:F0/ca02L.net] workbookは指定してるの?
644 名前:デフォルトの名無しさん [2020/06/08(月) 14:34:55.82 ID:k7tLKOMH.net] アドインに記述されてるプロシージャを、シート上の図形をボタンにしてそこから走らせたいのですが、 引数を渡そうとすると、このブックでマクロが使用できないかすべてのマクロが無効なっている可能性があります、と出て実行できません すべてのマクロを有効にしてもダメでした 引数なしの場合は、マクロが無効であっても、なんの問題もなく実行されます 登録は、'プロシージャ名 "引数"'とやっているのですが、マクロからそのままやると実行されますが、ボタンに登録すると実行されません なにが問題なんでしょうか?
645 名前:デフォルトの名無しさん [2020/06/08(月) 15:14:19 ID:vAWoQ1cV.net] sub 引数なし() 引数あり "引数" end sub
646 名前:デフォルトの名無しさん [2020/06/08(月) 15:39:02.50 ID:P+hhNSq/.net] なるほど・・・ 結構な数のボタンになるので面倒ですが、ひとまずそれでやってみます
647 名前:デフォルトの名無しさん mailto:sage [2020/06/08(月) 15:41:22.39 ID:F0/ca02L.net] プルダウンなりなんなりで選ぶなりなんなりさせればいいじゃないなり
648 名前:デフォルトの名無しさん mailto:sage [2020/06/08(月) 16:55:09.51 ID:Fo3kuWti.net] イベント付きボタンのクラス作ればいいんじゃないのかな
649 名前:611 mailto:sage [2020/06/08(月) 17:50:20 ID:k1oezjz2.net] srcsheet.Range(Cells(2, 1), Cells(Cells(Rows.Count, 1).End(xlUp).Row, 8)).Copy のところが違うみたいです。どう書けばいいですか?
650 名前:デフォルトの名無しさん mailto:sage [2020/06/08(月) 18:10:47 ID:sSFxNrIu.net] シート名が抜けるの俺もむかーしよくやったわぁ アクティブにすると直るんだよなぁw 何度やったか記憶にないぐらいやって痛い思いした
651 名前:デフォルトの名無しさん [2020/06/08(月) 18:31:02.99 ID:J+Lc8xxu.net] withで囲んでもドットを忘れてそれに気づかずいつまでもソースとにらめっこしたりな
652 名前:デフォルトの名無しさん mailto:sage [2020/06/08(月) 18:52:12.93 ID:d2CDqPLn.net] >>624 srcsheet.Range(srcsheet.Cells(2, 1), srcsheet.Cells(Cells(Rows.Count, 1).End(xlUp).Row, 8)).Copy 確証ないけど…
653 名前:デフォルトの名無しさん mailto:sage [2020/06/08(月) 19:01:25.33 ID:zqZQO86x.net] Private Sub Workbook_SheetSelectionChange(ByVal Sh As Object, ByVal Target As Range) Sh.Range("A:Z").Interior.Color = xlNone If Intersect(Sh.Range("A:Z"), Target) Is Nothing Then Exit Sub Else '赤く色が変わる
654 名前:列 Intersect(Selection.EntireRow, Sh.Range("G:Z")).Interior.Color = RGB(0, 255, 0) End If End Sub とにかく複数選択したセル行の特定の列を全部色付け 選択をやめると色が戻る(デフォルト)をやりたくて ThisWorkBookにこれを追記 で、なんとか希望の動きになったんですが これに1行目から7行目は除外(選択しても色が付かない) という条件の追加は可能ですか? 自分の知識じゃ無理ゲーですみません [] [ここ壊れてます]
655 名前:デフォルトの名無しさん mailto:sage [2020/06/08(月) 19:48:40.38 ID:58QwRa4M.net] >>628 一番最初に、ifステートメント入れれば良い。 if target.row >=8 thenとか。
656 名前:611 mailto:sage [2020/06/08(月) 20:15:16.49 ID:k1oezjz2.net] >>624 ありがとうございますm(__)m
657 名前:デフォルトの名無しさん mailto:sage [2020/06/08(月) 20:24:46.83 ID:zqZQO86x.net] >>629 おおお、ありがとう理想の挙動に近づきました! これだと12行目を選択した後にやめて 1行目を選択しても12行目の色が残っちゃうんだけどそれは回避不能ですか? If Intersect(Sh.Range("A:Z"), Target) Isのところを If Intersect(Sh.Range("A8:Z5000"), Target) Is とかに変えても少し挙動が近づいた気もしますが、
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キー押せば表示されるからさ