Ir para conteúdo
Fórum Script Brasil
  • 0

Que Erro é Esse?


Mateustg

Pergunta

Tenho uma página que é para mostrar um gráfico, porém quando excuto a mesma ela gera o seguinte erro:

Microsoft VBScript runtime error '800a0009'

Subscript out of range: '[number: 0]'

/microlins/grafico.asp, line 15

A linha 15 é:

maior_valor = data(LBound(data))

meu código completo é o seguinte:

<% Option Explicit %>

<%
Const grafaltura = 300
Const graflargura = 600
Const barImage = "img_graf.gif"

sub BarChart(data, rotulos , titulo, eixos)
   Response.Write("<TABLE CELLSPACING=0 CELLPADDING=1 BORDER=0 WIDTH=" & graflargura & ">" & chr(13))
   Response.Write("<TR><TH COLSPAN=" & UBound(data) - LBound(data) + 2 & ">")
   Response.Write("<FONT SIZE=+2>" & titulo & "</FONT></TH></TR>" & chr(13))
   Response.Write("<TR><TD VALIGN=TOP ALIGN=RIGHT>" & chr(13))

   Dim maior_valor
   maior_valor = data(LBound(data))

   Dim i
   for i = LBound(data) to UBound(data) - 1
      if data(i) > maior_valor then maior_valor = data(i)
   next

   Response.Write("<b>" & maior_valor & "</b>-" & "</TD>")

   Dim largura_percentual
   largura_percentual = CInt((1 / (UBound(data) - LBound(data) + 1)) * 100)

For i = LBound(data) to UBound(data) - 1
  Response.Write(" <TD VALIGN=BOTTOM ROWSPAN=2 WIDTH=" & largura_percentual & "% >" & chr(13))
  Response.Write("   <IMG SRC=""" & barImage & """ WIDTH=100% HEIGHT=" & CInt(data(i)/maior_valor * grafaltura) & ">" & chr(13))
  Response.Write(" </TD>" & chr(13))
Next

  Response.Write("</TR>")
  Response.Write("<TR><TD VALIGN=BOTTOM ALIGN=RIGHT><b>0</b></TD></TR>")

  Response.Write("<TR><TD ALIGN=RIGHT VALIGN=BOTTOM>" & eixos & "</TD>" & chr(13))
  for i = LBound(rotulos) to UBound(rotulos) - 1
    Response.Write("<TD VALIGN=BOTTOM ALIGN=CENTER>" & rotulos(i) & "</TD>" & chr(13))
  next
  Response.Write("</TR>" & chr(13))
  Response.Write("</TABLE>")
end sub

Dim objConnection, cnpath
Set objConnection = Server.CreateObject("ADODB.Connection")
cnpath="DBQ=" & server.mappath("bd/cadastro.mdb")
objConnection.Open "DRIVER={Microsoft Access Driver (*.mdb)}; " & cnpath

Dim SQL
SQL = "SELECT Pergunta,Resposta FROM satisfacao"

Dim rsResposta, adOpenStatic
Set rsResposta = Server.CreateObject("ADODB.Recordset")
rsResposta.Open SQL, objConnection, adOpenStatic

Dim numRegistros
numRegistros = rsResposta.RecordCount

Dim VetorResposta(), VetorNomes()
Redim VetorResposta(numRegistros)
Redim VetorNomes(numRegistros)

Dim i
for i = 0 to numRegistros-1
    VetorResposta(i) = rsResposta("Resposta")
    VetorNomes(i) = rsResposta("Pergunta")
    rsResposta.MoveNext
next

%>

<HTML>
<BODY>
<CENTER>
<% BarChart VetorResposta,VetorNomes,"Satisfação dos Alunos - Março/Abril","Alunos" %>
</CENTER>
</BODY>
</HTML>

<%
    rsResposta.Close
    Set rsResposta = Nothing

    objConnection.Close
    Set objConnection = Nothing
%>

Me ajudem por favor!!!

Link para o comentário
Compartilhar em outros sites

1 resposta a esta questão

Posts Recomendados

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,3k
×
×
  • Criar Novo...