Ниже приведен код VBA, предназначенный для создания пула случайных выборок.Тем не менее, прежде чем я смогу что-то из этого получить, я получаю сообщение об ошибке «Sub или функция не определена» в первой строке кода.
Что я нашел до сих пор. -Я не верю, что это ошибка, связанная с функцией, потому что, когда я шагаю по коду, она останавливается на первой строке.- Я активировал плагин решателя, как рекомендовано Здесь , но, насколько я могу судить, это не относится к моей проблеме.
Простите, если я почему-то не следую лучшепрактики для размещения на этом сайте.Если я делаю ошибку, пожалуйста, дайте мне знать.
Option Explicit
Sub Sample()
Dim oWS As Worksheet, iRow As Long, oRange As Range, oChart As Chart
iRow = InputBox("How many rows on a new sheet?", , 25) + 2
Set oWS = Worksheets.Add(, ActiveSheet)
Range(Cells(2, 2), Cells(2, 11)).Formula = "=INT(Rand()*11)"
Range(Cells(2, 2), Cells(2, 11)).Interior.Color = vbYellow
Cells(2, 13).Formula = "=STDEV(b2:k2)"
Range(Range("A2"), Cells(iRow, 11)).Table , Range("A1")
Set oRange = Range(Cells(iRow + 2, 2), Cells(iRow + 2, 11))
oRange.FormulaR1C1 = "=AVERAGE(R[-2]C:R[-" & iRow & "]C)"
oRange.Interior.Color = vbYellow
Cells(iRow + 2, 13).FormulaR1C1 = "=STDEV(RC[-11]:RC[-2])"
Range("O2:O11").Formula = "=ROW(A1)"
Range("P2:P11").FormulaArray = "=FREQUENCY(B2:K2,O2:O11)"
Range("O14:O23") = "=ROW(A1)"
Range("P14:P23").FormulaArray = "=FREQUENCY(" & oRange.Address & ",O14:O23)"
Range("O2:P11").Select
oWS.Shapes.AddChart2(240, xlXYScatterLines).Select
ActiveChart.SetSourceData = oWS.Range("O2:P11")
ActiveChart.HasTitle = False
oWS.ChartObjects(1).Top = Range("R2").Top
oWS.ChartObjects(1).Left = Range("R2").Left
oWS.ChartObjects(1).Width = 300
oWS.ChartObjects(1).Height = 150
Range("O14:P23").Select
oWS.Shapes.AddChart2(240, xlXYScatterLines).Select
ActiveChart.SetSourceData = oWS.Range("O14:P23")
ActiveChart.HasTitle = False
oWS.ChartObjects(2).Top = Range("R14").Top
oWS.ChartObjects(2).Left = Range("R14").Left
oWS.ChartObjects(2).Width = 300
oWS.ChartObjects(2).Height = 150
Range("A1").Select
End Sub
Ссылки