question

Erro de compilação no Microsoft Excel VBA: Matriz esperada (precisa corrigir)?

Basicamente, eu fiz um programa que recebeu uma lista de números de um arquivo .csv e entradas em uma planilha em células a2:aXXX. Então estou tentando contar os números, encontrar a média e o desvio-padrão deles.

Aqui está o meu código:

Dim I, nd As Integer
Dim w(1000) As Double
Dim m As Variant
Dim sd As Variant
Dim n As Variant
Dim binsize As Double
Dim intervalo As Double
Dim bincount As Double

Abra o "F:\ME 232A\weights.csv" para a entrada como # 1
nd = -1
Fazer
Se EOF(1), em seguida, sair
nd = nd + 1
Entrada # 1, w(nd)
Loop
Fechar # 1

Sheets("Sheet1").Selecione
Células (2, 1).Selecione
Para I = 0 Até nd
ActiveCell.Value = w(i)
ActiveCell.Offset (1, 0).Selecione
Seguinte eu

n = Application.WorksheetFunction.CountIf_
(range("a2:a1000"), "> 0")
m = Application.WorksheetFunction.Average_
(range("a2:a1000"))
SD = Application.WorksheetFunction.StDev_
(range("a2:a1000"))

Eu continuo recebendo erro de compilação: matriz de espera, onde ele destaca o "intervalo". Geralmente o "intervalo" automaticamente é suposto para ser "Range" mas ele sempre muda a "gama" com um "r" minúsculo quando estou a edição do código.

Ajuda é muito apreciada.
resposta Resposta

Para corrigir o erro de compilação: matriz esperada no seu código VBA Microsoft Excel, siga os passos abaixo:

  1. Abra o arquivo "weights.csv" para garantir que os dados estejam corretamente formatados.
  2. No seu código VBA, verifique se a declaração Dim w(1000) As Double é suficiente para armazenar todos os valores de w(nd) que você está tentando ler do arquivo. Se não for suficiente, ajuste o tamanho da matriz conforme necessário.
  3. Verifique se a declaração Dim I, nd As Integer está correta. Certifique-se de que I será a sua variável de controle do laço e nd a variável que armazenará o número total de valores lidos do arquivo.
  4. Após a leitura de dados do arquivo, certifique-se de que as células da planilha estão sendo preenchidas corretamente com os valores de w(i).
  5. Verifique se as funções de contagem, média e desvio padrão estão sendo chamadas corretamente. Em particular, verifique se range("a2:a1000") está referenciando corretamente o intervalo em que seus dados estão localizados.
  6. Revise o uso das barras sublinhadas (_) após o nome das funções. Verifique se o uso delas está correto e se não há erros de digitação que possam estar causando o problema.
  7. Verifique se não há nenhum outro trecho de código que esteja interferindo com as variáveis declaradas e as funções chamadas nesta parte do código.

Após fazer essas verificações e ajustes, tente compilar e executar o código novamente. Caso o erro persista, revise cuidadosamente as referências de células e variáveis em busca de erros de digitação ou uso incorreto.

Esperamos que essas instruções tenham sido úteis para corrigir o erro em seu código VBA do Microsoft Excel. Se precisar de mais alguma ajuda, não hesite em buscar suporte de um profissional em programação VBA.


ComentáriosComentários
Acho que a resposta não está correta ou que você gostaria de acrescentar mais
alguma informação? Envie o seu comentário abaixo..

Guest


HTML não é permitido!

Image Code

Digite os caracteres que aparecem na imagem por isso sabemos que você é humano!

Receber um email quando alguém acrescenta outro comentário a esta pergunta


Topo da página


Home  Terms
Copyright © Accelerated Ideas 2005-2024
All rights reserved