のセルの範囲を参照し、Iは(カテゴリ変数の多くの列を含むテーブル)を有する:インデクシングVBAを介して別のワークシートにExcelで
A E
S E
D YU
R T
FD R
FD RT
D YU
S T
AS R
D RR
D R
Iは、(各別個の用語の頻度)たい:
A 1 E 2
S 2 YU 2
D 4 T 2
R 1 R 3
FD 2 RT 1
AS 1 RR 1
私は各用語の頻度を計算しています。
Sub ff()
Range("B1:B6").Select
Selection.FormulaArray = "=COUNTIFS(Sheet1!C[-1],Sheet2!RC[-1]:R[5]C[-1])"
Range("D1").Select
End Sub
しかし、私は各列をループし、別のシートに頻度カウントを入れたいと思います。これまでのところ、私が持っている:私はエラーを取得しておく場所
Sub Macro1()
Sheets("Sheet1").Select
lcol = Cells(1, Columns.Count).End(xlToLeft).Column
N = Cells(Rows.Count, 1).End(xlUp).Row
For j = 1 To lcol
Range(Cells(1, j), Cells(N, j)).Select
Selection.Copy
Sheets("Sheet2").Select
Cells(1, 2 * j - 1).Select
ActiveSheet.Paste
Columns(2 * j - 1).RemoveDuplicates Columns:=1, Header:=xlNo
nr = Cells(Rows.Count, 2 * j - 1).End(xlUp).Row
Range(Cells(1, 2 * j), Cells(nr, 2 * j)).Select
*Selection.FormulaArray = "=COUNTIFS(Sheet1!C[" & j & "],Sheet2!RC[-1]:R[5]C[-1])"
Sheets("Sheet1").Select
Next j
End Sub
- です。どのようにして、式を使用して別のワークシート範囲のセルを索引付けで参照できますか。正しい列を参照するためにjを使用したいと思います。
私はRefereing to a range of cell in another sheetの助言に従ったが、明示的な細胞を参照している。私の場合は、明示的なセルを参照しますが、インデックス参照(j)を参照します。辞書を使ってコメントで述べたように
Sheets(2).Range("F15:AK46").Select
が同様に私に
私はおそらくこのために辞書を使用して、キーが既に例えば存在している場合それから、関連する値に1を加えます。 – QHarr
最終的な範囲が分かったら、元の数式と同じループ外の範囲式を設定してください。 – QHarr