Excel総合相談所 136

レス数が1000を超えています。これ以上書き込みはできません。
0001名無しさん@そうだ選挙にいこう2019/07/27(土) 17:47:29.09
【1 OSの種類         .】 Windows**
【2 Excelのバージョン   】 Excel**
【3 VBAが使えるか    .】 はい・いいえ
【4 VBAでの回答の可否】 可・否

▼━関連スレ━━━━━━━━━━━━

前スレ
Excel総合相談所
https://find.5ch.net/search?q=excel

Excel VBA 質問スレ
https://find.5ch.net/search?q=excel+vba

【質問不可】Excel総合相談所スレの雑談・議論スレ
https://find.5ch.net/search?q=excel+%E3%80%80%E7%9B%B8%E8%AB%87%E6%89%80

0952名無しさん@そうだ選挙にいこう2019/10/05(土) 02:29:49.48
更新プログラムの為にサインインしたらメニューバーに自分の名前が出るようになったのでサインアウトしようとしたら「カスタマイズしたものが失われます」と警告が
通信を切って再起動しても変わらず悩んだ末にサインアウト!
結果は特にカスタマイズしたもので消えたものはなくて一安心だがカスタマイズしたものって何だったの?

0953名無しさん@そうだ選挙にいこう2019/10/05(土) 11:09:19.77
【1 OSの種類         .】 Windows10
【2 Excelのバージョン   】 Excel2017
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 否

出力したエクセルデータを、特定のフォーマットに整理する作業を簡単にしようとしています
ひとまずマクロで自動記録したものを加工しながらどうにか自動化したのですが
例えばG列をC列の前に切り取って貼り付けすると旧C列がD列となりますよね?
これを繰り返すと少しずつ列がズレるためか、思ったような動きにならずかなり手間取りました
「次にB列に行を挿入したいがC列と記録したほうが正しく動く」ような状態があり…
マクロ記録において、こういうやり方は正しいですか?

0954名無しさん@そうだ選挙にいこう2019/10/05(土) 12:20:50.03
>>953
挿入後のズレを考慮して作ってもいいし、前に挿入するなら後ろから処理していくと楽だと思うよ

0955名無しさん@そうだ選挙にいこう2019/10/05(土) 12:50:58.11
新しいシートにポイポイ放り込む形にしてみては

0956名無しさん@そうだ選挙にいこう2019/10/05(土) 13:21:16.79
C:CにA1と同じセルがあるかどうかをチェックする際、どの関数を使いますか?
countif()?match()?

0957名無しさん@そうだ選挙にいこう2019/10/05(土) 13:28:50.31
>>956
俺はcountifだがかなり人によると思う

0958名無しさん@そうだ選挙にいこう2019/10/05(土) 15:02:44.06
Hの列だけで空欄のセルがある場合には一つ上のセルをコピーしたいのですが
↓だと、A列ではない他の列の最終行まで続いているのと、すべてのセルにも
同じコピーをしてしまいます。

For r = Cells(Rows.Count, 1).End(xlUp).Row To 2 Step -1
On Error Resume Next
With range("H2:H" & r)
.SpecialCells(xlCellTypeBlanks).Formula = "=R[-1]C"
.Value = .Value
End With
Next r
Err.Clear

0959名無しさん@そうだ選挙にいこう2019/10/05(土) 15:18:43.45
>>954
意味深だなぁ、

0960名無しさん@そうだ選挙にいこう2019/10/05(土) 16:28:36.07
>>954
一応アリなんですね
初めて使ったので試行錯誤でしたが…確かに後ろから処理してなるべくずれないようにしたほうがすっきりしそうです

>>955
新しいシートに作れたらレベルが1つ上がりそうですね
実は不要な列も多いので、その方法は今後試してみたいです

0961名無しさん@そうだ選挙にいこう2019/10/05(土) 20:07:37.69
>>953
データ量や型にもよるけど、
配列に入れてから貼り付けるのがいい。

a = Range("A1:A65536").Value
Range("C1:C65536").Value = a

0962名無しさん@そうだ選挙にいこう2019/10/05(土) 23:26:43.56
Jの列で半角の英数字以外の文字を消すコードを教えてください

"あ5いうAえ6おBかき"→"5A6B"

0963名無しさん@そうだ選挙にいこう2019/10/05(土) 23:30:47.96
>>962
substitute jisとかそんなん

0964名無しさん@そうだ選挙にいこう2019/10/06(日) 03:59:48.46
【1 OSの種類         .】 Windows10
【2 Excelのバージョン   】 Excel2019
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 否

競馬のデータをエクセルに入れたのですが競走馬の名前と競馬場や距離を入れると
各着順のカウントをしたいのですがVLOOKUPとCOUNTIFSをどう組み合わせればいいのか
教えてください。

http://iup.2ch-library.com/i/i2017802-1570301315.jpg

0965名無しさん@そうだ選挙にいこう2019/10/06(日) 04:06:36.59

0966名無しさん@そうだ選挙にいこう2019/10/06(日) 04:32:31.10
>>962
Sub Macro1()
  Dim s As String
  For r = 1 To Cells(Rows.Count, "J").End(xlUp).Row
    s = Cells(r, "J")
    s2 = ""
    For i = 1 To Len(s)
      c = Mid(s, i, 1)
      Select Case c
      Case "0" To "9", "A" To "Z", "a" To "z"
         s2 = s2 & c
      End Select
    Next
    Cells(r, "J") = s2
  Next
End Sub

0967名無しさん@そうだ選挙にいこう2019/10/06(日) 04:37:26.78

0968名無しさん@そうだ選挙にいこう2019/10/06(日) 05:03:38.44
>>964
countifs(h8:h100,c2,c8:c100,c4,着順の範囲,"1着")

0969名無しさん@そうだ選挙にいこう2019/10/06(日) 14:36:12.11
このバーのところに出るようになった検索バーって消せないんですか?
誰か最新のExcelに詳しい方お願いします
https://i.imgur.com/b5cGFet.png

0970名無しさん@そうだ選挙にいこう2019/10/06(日) 14:52:41.90
2016でオフライン時にヘルプを見られませんか?

0971名無しさん@そうだ選挙にいこう2019/10/06(日) 15:23:57.93
>>969
消せない
>>970
見れない

0972名無しさん@そうだ選挙にいこう2019/10/06(日) 15:47:45.67
>>969
ファイル>オプション オプション画面を表示します。
すると全般の中に、"既定でMicrosoft Search ボックス を折りたたむ"

0973名無しさん@そうだ選挙にいこう2019/10/06(日) 16:19:20.20
>>971
ありがとうございます

0974名無しさん@そうだ選挙にいこう2019/10/06(日) 16:23:18.49
【1 OSの種類         .】 Windows10
【2 Excelのバージョン   】 Excel2013
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 否

INDEX+MATCHでB328の中にN2〜N27の文字列が含まれてるとO2〜27の値を表示させるワイルドカードを使ったのですが、完全一致しか反映されませんでした。
どの部分が原因でしょうか。

=INDEX($O$2:$O$27,MATCH("*"&B32&"*",$N$2:$N$27,0))

0975名無しさん@そうだ選挙にいこう2019/10/06(日) 16:37:30.59
>>968
できました。
ありがとうございます。

0976名無しさん@そうだ選挙にいこう2019/10/06(日) 16:49:02.52
>>972
おおお、出来ましたありがとうございます!

>>971
うそつき!!!

0977名無しさん@そうだ選挙にいこう2019/10/06(日) 18:26:04.53
【1 OSの種類         .】 Windows7
【2 Excelのバージョン   】 Excel 2010
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 否

質問です。
AシートのA列に1 1 1 2 2 2 3 3 3
とあって
BシートのB列に1 2 3という風に
AシートのA列に入力した同じデータが
BシートのB列にまとまるにはどういう関数を使えばいいでしょうか?

ちなみに数字はランダムです。

説明が下手で申し訳ございません。
ご教示くださいますようよろしくお願いします。

0978名無しさん@そうだ選挙にいこう2019/10/06(日) 19:15:16.22
VBAの処理と、ワークシート関数の処理はあまり絡ませない方が良いのでしょうか?
例えば、ものすごく簡単に言うと、

range A1 =10
range A2 =20
range A4 = range A2 + range A3

みたいなプログラムです。
(range A3のセルには、sum関数A1+A2が入ってる)

実際は正しい値が入りますが、ちょっと気になったので…

0979名無しさん@そうだ選挙にいこう2019/10/06(日) 19:22:04.10
>>978
それが必要ならば絡ませる
意味もなく混在してるんでなければいいんじゃね

0980名無しさん@そうだ選挙にいこう2019/10/06(日) 20:00:21.27
>>977
small(hage!a:a,row(a1))
countifあたりでも検索してみれば

0981名無しさん@そうだ選挙にいこう2019/10/06(日) 21:47:05.89
974です。
=INDEX($O$2:$O$27,MATCH("*"&B32&"*",$N$2:$N$27,0))

INDEX+MATCHだと、
=INDEX($O$2:$O$27,MATCH(B32,"*"&N2:N27&"*",0))でした。
B列のなかにN列のものがふくまれていた場合にO列のコードを反映したいのですがうまくできません。どのようにしたらうまくいくでしょうか。

0982名無しさん@そうだ選挙にいこう2019/10/06(日) 22:30:21.83
974、981です。

こんな形ですが、ワイルドカードで特定の文字列を含んだ数字を表示させることはできそうなのですが、もっと効率のよい関数はあると思うんですが、難しいです。
=IF(COUNTIF(B32,"*"&$N$14&"*"),$O$14,IF(COUNTIF(B32,"*"&$N$15&"*"),$O$15,""))・・・・

うまく表現できなくてすみません。

0983名無しさん@そうだ選挙にいこう2019/10/07(月) 12:26:50.28
>>982

=INDEX($O$2:$O$27,MATCH(TRUE,ISNUMBER(SEARCH($N$2:$N$27,B32)),0))

Ctrl + Shift + Enter を押して数式を確認する必要があります

0984名無しさん@そうだ選挙にいこう2019/10/07(月) 12:49:19.86
range("b5").End(xldown).offset(1,0).select

これはレンジからoffsetまではオブジェクトで、Endとoffsetはレンジのプロパティっていう理解でいいですか?

0985名無しさん@そうだ選挙にいこう2019/10/07(月) 12:57:22.30
書いてあるのがプロパティかオブジェクトかという話なら最後のselect以外は全部プロパティ
戻り値がプロパティかオブジェクトかという話ならrangeもendもoffsetも全部オブジェクト

0986名無しさん@そうだ選挙にいこう2019/10/07(月) 13:48:44.43
>>983
有り難うございます。めっちゃ嬉しいです。

0987名無しさん@そうだ選挙にいこう2019/10/07(月) 20:35:17.65
>>985
ありがとうございます。プロパティとメソッドの違いがよく分からないです。勉強します。

0988名無しさん@そうだ選挙にいこう2019/10/07(月) 20:53:00.99
>>987
メソッドは関数
プロパティは変数
両者を一つにまとめたのがクラス
これらすべてがオブジェクト

0989名無しさん@そうだ選挙にいこう2019/10/07(月) 20:58:02.42
>>988
ありがとうございます。
.selectとか.deleteみたいに文章の最後に来るのがメソッドでドットで連結していくのがプロパティっ理解でした。。。

0990名無しさん@そうだ選挙にいこう2019/10/07(月) 21:00:02.69
>>980
ありがとうございました。

0991名無しさん@そうだ選挙にいこう2019/10/08(火) 12:25:56.21
for i=1 to 20でループしようとしたら何故か1の次に3が代入されます
なんの原因が考えられるでしょうか?

0992名無しさん@そうだ選挙にいこう2019/10/08(火) 12:36:02.39
>>991
ステップインとかでみてみては?
コード見ないとわからん。

0993名無しさん@そうだ選挙にいこう2019/10/08(火) 12:46:53.33
>>992
今出先なので思い出せる範囲ですが

dim i
for i =1 to 20
ieのチェックボックスをクリックするコード(チェックボックスのID「"×××"& i-1」)

ie操作をしており、IDの末尾が0.1.2.〜と順に増えていくチェックボックスを順にクリックしていく流れです。

0994名無しさん@そうだ選挙にいこう2019/10/08(火) 13:35:08.38
>>991
2だけ飛ばすのではなくなぜか1.3.5.7〜というように飛び飛びになってました

0995名無しさん@そうだ選挙にいこう2019/10/08(火) 14:41:12.24
そんなもんForループの中に i = i + 1 があるだけだろ

0996名無しさん@そうだ選挙にいこう2019/10/08(火) 16:22:22.14
>>993
死ねハゲ

0997名無しさん@そうだ選挙にいこう2019/10/08(火) 16:37:56.19
なんでそんなうろ覚えのまま外出先で急に質問しようと思ったのか

0998名無しさん@そうだ選挙にいこう2019/10/08(火) 17:23:58.68
>>996
このハゲ

0999名無しさん@そうだ選挙にいこう2019/10/08(火) 17:54:23.59
           |
            |  彡⌒ミ
           \ (´・ω・`)また髪の話してる
             (|   |)::::
              (γ /:::::::
               し \:::
                  \

1000名無しさん@そうだ選挙にいこう2019/10/08(火) 18:00:07.49
あ?

10011001Over 1000Thread
このスレッドは1000を超えました。
新しいスレッドを立ててください。
life time: 73日 0時間 12分 38秒

10021002Over 1000Thread
5ちゃんねるの運営はプレミアム会員の皆さまに支えられています。
運営にご協力お願いいたします。


───────────────────
《プレミアム会員の主な特典》
★ 5ちゃんねる専用ブラウザからの広告除去
★ 5ちゃんねるの過去ログを取得
★ 書き込み規制の緩和
───────────────────

会員登録には個人情報は一切必要ありません。
月300円から匿名でご購入いただけます。

▼ プレミアム会員登録はこちら ▼
https://premium.5ch.net/

▼ 浪人ログインはこちら ▼
https://login.5ch.net/login.php

レス数が1000を超えています。これ以上書き込みはできません。