Escreva a descrição
Grava dados em um arquivo sequencial.
Sintaxe de escrita
1 | Escrever #FileNumber, [OutputList] |
A instrução Write contém 2 argumentos:
Número do arquivo: Qualquer número de arquivo válido.
OutputList: Opcional. Uma ou mais expressões numéricas delimitadas por vírgulas ou expressões de string para gravar em um arquivo.
Exemplos de função de gravação VBA do Excel
Primeiro nome | Último nome | Era | Gênero |
Robert | Stepp | 20 | Masculino |
Jennifer | Mariscal | 33 | Fêmea |
David | Romig | 35 | Masculino |
Carmel | Ingram | 26 | Fêmea |
Para gerar Range (“A2: D5”) em uma folha como a imagem acima para um arquivo, você pode usar o código a seguir.
12345678910111213141516171819202122232425262728293031323334353637 | Sub WriteRangeToFile (strFile As String, rng As Range)Dim row como range, célula como rangeDim FileNumber As IntegerFileNumber = FreeFileAbra strFile para saída como #FileNumberPara cada linha em rng.RowsPara cada célula na linha. CélulasSe cell.Column = row.Cells.Count ThenEscreva #FileNumber, cellOutroEscreva #FileNumber, cell,Fim sePróxima célulaPróxima linhaFechar #FileNumberEnd SubSub Write_Example ()Dim strFolder As StringDim strFile As StringDim dlgFolder As FileDialogDim rng como alcanceDefina dlgFolder = Application.FileDialog (msoFileDialogFolderPicker)Se dlgFolder.Show = True ThenstrFolder = dlgFolder.SelectedItems (1)OutroSair do SubFim seDefinir rng = intervalo ("A1: D5")strFile = "Write_Output.txt"WriteRangeToFile strFolder & "\" & strFile, rngEnd Sub |
A saída para o arquivo “Write_Output.txt”:
12345 | "Nome", "Sobrenome", "Idade", "Sexo""Robert", "Stepp", "20", "Masculino""Jennifer", "Mariscal", "33", "Feminino""David", "Romig", "35", "Masculino""Carmel", "Ingram", "26", "Female" |