[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 701- 801- 901- 1001- 2ch.scのread.cgiへ]
Update time : 07/02 04:32 / Filesize : 267 KB / Number-of Response : 1038
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

Excel VBA 質問スレ Part66



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/

※デフォルト設定

573 名前:デフォルトの名無しさん [2020/06/05(金) 21:32:27 ID:ZSs62RcL.net]
色々調べたのですが・・・。
コピーし貼り付けのマクロで

条件付き書式だけを除いて張り付ける、というマクロを探しています。

今の状態ですと条件付き書式の情報まで上書きされて困っています。
ご教授宜しくお願い致します。

574 名前:デフォルトの名無しさん mailto:sage [2020/06/05(金) 21:43:17.50 ID:H0L/fXZL.net]
>>548
変換ミスにしては何度も使ってるぞ

575 名前:デフォルトの名無しさん mailto:sage [2020/06/05(金) 21:47:17.22 ID:2CjtUfu9.net]
>>549
まず他スレの質問締め切るなり断り入れるなりして来いよ

576 名前:デフォルトの名無しさん mailto:sage [2020/06/05(金) 21:47:20.00 ID:nvWU7/6f.net]
貼り付けた後に
.FormatConditions.Delete
で条件付き書式だけ削除じゃダメなの?

577 名前:548 [2020/06/05(金) 22:17:11 ID:ZSs62RcL.net]
>>552
有難うございます!
しかしそれでは出来ないのです。すいません。

578 名前:デフォルトの名無しさん mailto:sage [2020/06/05(金) 22:21:45.02 ID:WwtDf+8P.net]
>>549
そもそも"コピー"する必要はあるの?

579 名前:デフォルトの名無しさん mailto:sage [2020/06/06(土) 02:50:09 ID:2JXrsjtz.net]
pasteSpecial繰り返して必要なものだけ貼り付けるしかないんじゃない?

580 名前:デフォルトの名無しさん mailto:sage [2020/06/06(土) 07:05:32 ID:boE/wbIl.net]
何度でも蘇るのが再起だろうな

581 名前:デフォルトの名無しさん mailto:sage [2020/06/06(土) 08:07:18.40 ID:dTKuJKfw.net]
>>436
ロマサガ3とはなかなか分かってる先輩だなw



582 名前:デフォルトの名無しさん mailto:sage [2020/06/06(土) 12:47:06 ID:EOD/vRIp.net]
VBAの配列にもCount使わせて欲しい・・・・
面倒でたまらないわぁ
ちなみにSplitで空配列になったときってUBoundは必ず-1返すのかな
まぁSplitする前の文字列が空かどうかで判別すればいいんだけど

583 名前:デフォルトの名無しさん mailto:sage [2020/06/06(土) 14:19:39.59 ID:nsmtjJW2.net]
SetTimerのコールバック関数内でSetTimerしなおすやつは、再起といっていいかも
あれ、再帰じゃないし

584 名前:デフォルトの名無しさん mailto:sage [2020/06/06(土) 14:24:54.65 ID:FUHWS7EH.net]
>>558
そういうのはラッパークラス定義しちゃえばいい

要素を持たない配列はuboundで-1になるけど、
配列を返す関数をそのままuboundの引数にするとメモリが解放されないらしい
一度変数に代入してから、その変数を引数にするしかない

585 名前:548 [2020/06/06(土) 19:20:06 ID:evXurMFK.net]
>>555
有難うございます!そういうやり方もありますね。勉強になりました。

あれからIF関数と条件付き書式を組み合わせて問題克服できました。
相談に乗っていただけた方みなさん有難うございます。
お騒がせしますた。

586 名前:デフォルトの名無しさん mailto:sage [2020/06/07(日) 01:10:37.79 ID:czcu/Wo5.net]
ボタンを押してランダムに1ー100の数字をコンピュータに選ばせて、その結果をセルに表示させたいと思いマクロを組みました。
それはできたのですが、ボタンを押すごとに出る数字の履歴を残したいときはどうしたらいいでしょうか?例えば初めはA1、次はA2、次はA3…のようにしたいです。

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]
いずれにしても海外環境で動くかって話になると、
関数名ひとつの話じゃないってことだな






[ 続きを読む ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧]( ´∀`)<267KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef