PHP, Java, JavaScript, XML, XHTML, HTML, CSS, ASP, Delphi, Assembly, LaTeX, C, UML, Flash, Perl, SQL, Python, Zope, Pascal, WML. Se conhece mais de 3 siglas referidas, este é o forum para si.
Moderadores: Administradores, Moderadores
por Asterion » Sexta Mar 02, 2007 15:33
Boas!
Alguém me sabe dizer a função do vba no excel que me permite copiar a linha que selecionei clicando com o rato por exemplo em 7 (linha 7) mas que em vez de copiar a linha toda apenas copia por exemplo a linha 7 coluna 1 linha 7 coluna 2 linha 7 coluna 3... até à linha 7 coluna 30.
-
Asterion
- Aprendiz

-
- Mensagens: 22
- Registado: Segunda Ago 14, 2006 19:18
por KrIaXPaTaLa » Sexta Mar 02, 2007 15:56
Range("A7:A30").Select
Cumprimentos,
KrIaX.
EDIT: Para copiar depois - Selection.copy
Mas estou a ler melhor, e o que queres não é bem isto, pois não?
hardware.com.pt
#HCP @ PTNET
P IV 1.7 | 1 GB | 120 GB | GF4000 | SB5.1 | TFT Merd*so
TEL:
voipcheap
Send Pr0n to:
kria@iol.pt
Urls Inuteis:
blog
-
KrIaXPaTaLa
- Membro Diamante

-
- Mensagens: 1159
- Registado: Terça Mar 01, 2005 17:38
por Asterion » Sábado Mar 03, 2007 0:52
Não é bem isso mas desde já obrigado.
Eu tenho uma tabela com diversas linhas e diversas colunas... dessas colunas por exemplo só me interessam as 8 últimas colunas correspondentes à linha 7. Eu queria exportar para um fixeiro .txt esses números ou caractéres dessas colunas correspondentes neste caso à linha 7 num formato para ser utilizado noutro programa. Mas como eu tenho que fazer a mesma coisa para outras linhas mas com os valores sempre dakelas 8 últimas colunas, eu queria fazer o programa de forma a que ao clicar no 7 da linha (seleciona a linha toda), clico na macro "Exportar" e exporta não os dados da linha toda mas sim os dados correspondentes às colunas que eu quero.
Por exemplo
A B C D E F
1 2 3 4 5 6 7
2 8 r t 8 2 1
Por exemplo aqui me interessa as colunas BCDE e quero exportar esse valores correspondentes à linha 1 num fixeiro .txt com o seguinte formato por exemplo: (cada valor da célula é exportado para o mesmo ficheiro txt mas com formato diferente)
0001 abcv _3
0002 _|-|- _4
0003 _5
0008 _6
Depois podia exportar a linha 2 e assim sucessivamente. Como o Excel está sempre a ser actualizado com novas linhas, eu queria que o programa exportasse a linha que selecionei... assim basicamente é isto.
Dicas, sites, opinioes sao sempre bem vindas
-
Asterion
- Aprendiz

-
- Mensagens: 22
- Registado: Segunda Ago 14, 2006 19:18
por Karnac » Sábado Mar 03, 2007 1:24
Boas!
Não sei se estou a perceber bem o que pretendes...mas porque não crias um button e dps on_click colocavas o código VBScript que selecciona o Range e copia-o para um ficheiro?..
-
Karnac
- Aprendiz

-
- Mensagens: 69
- Registado: Sábado Out 29, 2005 6:26
- Localização: Setúbal
por Asterion » Sábado Mar 03, 2007 12:18
Sim a ideia é essa, ter o botão que copia para o ficheiro, mas dado que o excel vai sendo actualizado com novas linhas terei que estar sempre a alterar o programa.
' Loop for each row in selection.
For RowCount = 1 To Selection.Rows.Count
' Loop for each column in selection.
For ColumnCount = 1 To Selection.Columns.Count
' Write current cell's text to file with quotation marks.
Print #FileNum, """" & Selection.Cells(RowCount, _
ColumnCount).Text & """";
' Check if cell is in last column.
If ColumnCount = Selection.Columns.Count Then
' If so, then write a blank line.
Print #FileNum,
Else
' Otherwise, write a comma.
Print #FileNum, ",";
End If
' Start next iteration of ColumnCount loop.
Next ColumnCount
' Start next iteration of RowCount loop.
Next RowCount
Este loop vai-me permitir selecionar o range que pretendo e depois clicar no button e é esse range que passa para o ficheiro de texto. Eu queria simplificar esse range a uma única linha e algumas colunas, tipo... este código em cima permite-me fazer isso, seleciono o intervalo e exporta-me esse intervalo. Eu não queria isso... em vez de estar a selecionar o intervalo, queria fazer um único clique numa célula qualquer da linha que pretendo exportar e quando clicasse no button, exportava um conjunto de células pertencentes exclusivamente a essa linha. E sempre que selecionasse uma célula de outra linha qulquer, quando clicasse no button exportava-me o conjunto de células pertencentes exclusivamente a essa linha.
-
Asterion
- Aprendiz

-
- Mensagens: 22
- Registado: Segunda Ago 14, 2006 19:18
por LuisFilipe » Domingo Mar 04, 2007 23:48
clica na coluna 1 da linha e
for f=0 to 100
a = ActiveCell.Offset(0, f).value
next f
acho que deve ser isto que queres
para saberes em que coluna estás também existe uma função
MsgBox (ActiveCell.Column)
-
LuisFilipe
- Membro Diamante

-
- Mensagens: 1270
- Registado: Domingo Set 04, 2005 22:12
por Asterion » Quarta Mar 07, 2007 19:04
Obrigado...
Utilizei o comando da célula activa e funcionou. Agora, queria guardar os printf's num ficheiro .txt, para o C:\ e com nome do ficheiro igual ao conteúdo existente na célula activa. Alguém sabe como posso fazer?
-
Asterion
- Aprendiz

-
- Mensagens: 22
- Registado: Segunda Ago 14, 2006 19:18
Voltar para Programação
Quem está ligado:
Utilizadores a ver este Fórum: Nenhum utilizador registado e 10 visitantes