この全ての頭にアポストロフィーが付いている状態で、さるの合計を求めたいです 0421名無しさん@そうだ選挙にいこう2019/06/13(木) 18:01:01.23 書式設定は何でもいいしアポストロフィーはあっても無くても良い でもせっかくだからvbaで置換して消しておいたほうが良いとは思う 0422名無しさん@そうだ選挙にいこう2019/06/13(木) 18:31:27.35 今までも違和感があったのだが今日知ってしまった EXCEL2016で第二縦軸の軸ラベルを追加しようとグラフ要素を追加→軸ラベルと進んでいくと、第二「横」軸を追加するボタンと第二「縦」軸を追加するボタンのアイコンがどちらも「横軸」の絵じゃないかw 0423名無しさん@そうだ選挙にいこう2019/06/13(木) 19:49:22.37>>421 >>418で数値にしてsumifしても0になるんですよね・・ 0424名無しさん@そうだ選挙にいこう2019/06/13(木) 19:49:42.40>>423 ファイルうp 0425名無しさん@そうだ選挙にいこう2019/06/13(木) 22:08:21.65>>424 お頭弱くて何が何やらわからなくなってきました https://dotup.org/uploda/dotup.org1871599.zip.html0426名無しさん@そうだ選挙にいこう2019/06/13(木) 22:44:28.33>>425 マクロ外してxlsx形式にしてくれないか 後、sumifってどこに入ってるの 0427名無しさん@そうだ選挙にいこう2019/06/13(木) 22:56:52.34>>426 https://dotup.org/uploda/dotup.org1871649.zip.html どこに入ってるってのはどういう意味? 0428名無しさん@そうだ選挙にいこう2019/06/13(木) 23:02:03.44 マクロに入ってる。worksheetfunctionで。 で、マクロでやりたいのか、ふつうに関数などでやりたいのか。 0429名無しさん@そうだ選挙にいこう2019/06/13(木) 23:05:07.75>>427 これはアポストロフィー抜かないと 0430名無しさん@そうだ選挙にいこう2019/06/13(木) 23:05:43.64 マクロでやりたいっす 04314282019/06/13(木) 23:13:58.13 Sub tes() Dim myMaxRow As Long Dim myAns As Long Dim i As Long myMaxRow = Cells(Rows.Count, 1).End(xlUp).Row For i = 1 To myMaxRow Cells(i, 3) = Cells(i, 2) * 1 Next i myAns = WorksheetFunction.SumIf(Range("A1:A4"), "さる", Range("C1:C4")) MsgBox myAns End Sub
よくわからんけど、こういうこと? 0432名無しさん@そうだ選挙にいこう2019/06/13(木) 23:16:25.18 アポストロフィー抜いたらいいんじゃないの Sub foo() For Each r In Range("b1:b4") If r.PrefixCharacter <> "" Then r.Formula = r.Formula End If Next Debug.Print WorksheetFunction.SumIf(Range("a1:a4"), "さる", Range("b1:b4")) End Sub 0433名無しさん@そうだ選挙にいこう2019/06/13(木) 23:45:18.59>>431 ありがとうございます大体そんな感じです SumIf(Range("A1:A4"), "さる", Range("C1:C4")) のrange指定をA4やC4ではなく最終行で指定するにはどう書けばいいですか?
Sub foo() 最終行 = Cells(Rows.Count, 1).End(xlUp).Row 現在行 = 1 For i = 1 To 最終行 For k = 1 To Cells(i, 2) Cells(現在行, 3).Value = Cells(i, 1).Value 現在行 = 現在行 + 1 Next Next End Sub 0473名無しさん@そうだ選挙にいこう2019/06/18(火) 20:52:18.15 あぁ1がいるのか こんな感じかね
Sub foo() 最終行 = Cells(Rows.Count, 1).End(xlUp).Row 現在行 = 1 For i = 1 To 最終行 For k = 1 To Cells(i, 2) Cells(現在行, 3).Value = Cells(i, 1).Value Cells(現在行, 4).Value = 1 現在行 = 現在行 + 1 Next Next End Sub 0474名無しさん@そうだ選挙にいこう2019/06/18(火) 21:12:04.67 ありがとうございます。試してみます。 0475名無しさん@そうだ選挙にいこう2019/06/18(火) 23:37:53.66>>441