Ir para conteúdo
Fórum Script Brasil

FresHHerB

Membros
  • Total de itens

    3
  • Registro em

  • Última visita

Sobre FresHHerB

FresHHerB's Achievements

0

Reputação

  1. não funciona, porque ai ele vai procurar a planilha com o nome mes, e não o conteudo da variável mes (da o erro Subscrito fora de Intervalo) e no 2o exemplo que usei esta funcionando normal, muito estranho
  2. Esse primeiro método me da um ERRO 400 Worksheets("RELAT").Range(Cells(i, 3), Cells(i + 1, 12)).Value = Worksheets(mes).Range("P5:Y6").Value Esse segundo método funciona normalmente Worksheets("RELAT").Range("C7:L8").Value = Worksheets(mes).Range("P5:Y6").Value O Primeiro e o segundo método não são as mesmas coisas ? Oque tem de errado ? Código completo: Sub atualizar_Relatorio() Dim i As Integer Dim j As Integer Dim mes As String j = 1 For i = 7 To 30 Step 2 mes = ActiveSheet.Cells(i, j).Value 'pegando o mês na planilha MsgBox (mes & " " & i) 'testando o nome do mês na msgbox, código roda normalmente até aqui Worksheets("RELAT").Range(Cells(i, 3), Cells(i + 1, 12)).Value = Worksheets(mes).Range("P5:Y6").Value 'este não funciona Worksheets("RELAT").Range("C7:L8").Value = Worksheets(mes).Range("P5:Y6").Value 'este funciona Next i End Sub Resumo do código: Estou pegando um range (valores) de uma planilha (a qual pego o nome(mes) na planilha "RELAT" usando o for ) e estou copiando os valores desta em outra planilha usando a referência por células, para que eu possa fazer a alteração de linha na planilha "RELAT" para que os dados não sejam substituidos, porém o Excel me mostra um Erro 400 Substitui o for pelo seguinte código, porém queria reduzir usando o for Código que estou usando e está funcionando: Sub atualizar_Relatorio() Worksheets("RELATÓRIO").Activate Worksheets("RELAT").Range("C7:L8").Value = Worksheets("JANEIRO").Range("P5:Y6").Value Worksheets("RELAT").Range("C9:L10").Value = Worksheets("FEVEREIRO").Range("P5:Y6").Value Worksheets("RELAT").Range("C11:L12").Value = Worksheets("MARÇO").Range("P5:Y6").Value Worksheets("RELAT").Range("C13:L14").Value = Worksheets("ABRIL").Range("P5:Y6").Value Worksheets("RELAT").Range("C15:L16").Value = Worksheets("MAIO").Range("P5:Y6").Value Worksheets("RELAT").Range("C17:L18").Value = Worksheets("JUNHO").Range("P5:Y6").Value Worksheets("RELAT").Range("C19:L20").Value = Worksheets("JULHO").Range("P5:Y6").Value Worksheets("RELAT").Range("C21:L22").Value = Worksheets("AGOSTO").Range("P5:Y6").Value Worksheets("RELAT").Range("C23:L24").Value = Worksheets("SETEMBRO").Range("P5:Y6").Value Worksheets("RELAT").Range("C25:L26").Value = Worksheets("OUTUBRO").Range("P5:Y6").Value Worksheets("RELAT").Range("C27:L28").Value = Worksheets("NOVEMBRO").Range("P5:Y6").Value Worksheets("RELAT").Range("C29:L30").Value = Worksheets("DEZEMBRO").Range("P5:Y6").Value End Sub
  3. Galera, to fazendo um programinha pra printar os numeros primos de 1 até N na tela, mas o programa ta dando crash não sei porque. CÓDIGO: #include <stdio.h> #include <stdlib.h> /*int resto_divisao (int dividendo, int divisor){ int resto; resto=dividendo%divisor; return(resto); }*/ void main(){ int numero=4; int vet[numero]; int vet_primo[numero]; int i,j,x=0,cont=0,cont2=0,aux; int *pont; for(i=2;i<=numero;i++){ //atribuir valor de 2 ate n aos vetores vet[i-2]=i; } for (i=2;i<numero+1;i++){ printf("\nO valor do vetor %d eh %d\n", i-1, vet[i-2]); } for(i=numero-1;i>=0;i--){ //i=3 NUMERO 4 for(j=numero-2;i>=0;j--){ //j=2 numero 3 if((vet[i])%(vet[j])==0){ cont=cont++; } } if(cont==0){ vet_primo[x]=vet[numero-1]; x++; cont2++; } } printf("\nOs numeros primos sao: \n"); }
×
×
  • Criar Novo...