Visual Basic para Aplicaciones - NECESITO AYUDA

Life is soft - evento anual de software empresarial
 
Vista:

NECESITO AYUDA

Publicado por MOISES (11 intervenciones) el 04/10/2005 14:09:56
NECESITO QUE LEA Y LOS VALORES DE LA COLUMNA .
LOS CREDITOS DEBEN ASUMIR EL FORMATO DE LA FILA 16 Y 17. 16 PARA EL TAMAÑO DEL CAMPO Y 17 PARA EL NUMERO DE COLUMNAS. IGUALMENTE LOS DEBITOS DEBEN ASUMIR EL FORMATO DE LA FILA 18 Y 19.
EN ESTE CASO ASUMEN EL FORMATO DEL DEBITO QUE ESTA DE PRIMERO. ME PARECE QUE NO RECONOCE EL VALOR DE LAS CELDAS DE LA COLUMNA A.
DE ANTEMANO GRACIAS.

A B C
CREDITO 65321263 111221
DEBITO 254364 15463541
CREDITO 5435435 543434
DEBITO
.......N

Dim attachment As Object

fila_largos = 16
fila_formatos = 17
fila_largos1 = 18
fila_formatos1 = 19

Const ForReading = 1, ForWriting = 2, ForAppending = 3
Const TristateUseDefault = -2, TristateTrue = -1, TristateFalse = 0
Dim fs, f, ts, s
HOJA_ACTUAL = ActiveSheet.Name

Cells(2, 4) = Cells(2, 4) + 1

nombre_archivo = Sheets(HOJA_ACTUAL).Cells(11, 2)
CANTIDAD_FILAS = Sheets(HOJA_ACTUAL).Cells(1, 4)
CANTIDAD_COLUMNAS = Sheets(HOJA_ACTUAL).Cells(5, 4)
encabezado = Sheets(HOJA_ACTUAL).Cells(3, 4)
Set fs = CreateObject("Scripting.FileSystemObject")
fs.CreateTextFile nombre_archivo
Set f = fs.GetFile(nombre_archivo)
Set ts = f.OpenAsTextStream(ForWriting, TristateUseDefault)
ts.Write encabezado + Chr(13)
For FILA = 21 To CANTIDAD_FILAS + 100
cadena = ""
For COLUMNA = 1 To CANTIDAD_COLUMNAS

For i = 21 To 21 + 1
If Range("A" & i) = "DÉBITO" Then

formato = Cells(fila_formatos, COLUMNA)
If Len(formato) > 0 Then
tema = Right(Space(Cells(fila_largos, COLUMNA)) + Format(Cells(FILA, COLUMNA), formato), Cells(fila_largos, COLUMNA))
Else
tema = Left(LTrim(RTrim(Cells(FILA, COLUMNA))) + Space(Cells(fila_largos, COLUMNA)), Cells(fila_largos, COLUMNA))
End If
If Range("A" & i) = "CREDITO" Then

formato = Cells(fila_formatos1, COLUMNA)
If Len(formato) > 0 Then
tema = Right(Space(Cells(fila_largos1, COLUMNA)) + Format(Cells(FILA, COLUMNA), formato), Cells(fila_largos1, COLUMNA))
Else
tema = Left(LTrim(RTrim(Cells(FILA, COLUMNA))) + Space(Cells(fila_largos1, COLUMNA)), Cells(fila_largos1, COLUMNA))
End If
End If
End If
Next i

cadena = cadena + tema
Next COLUMNA
cadena = Replace(cadena, Chr(10), " ")
cadena = Replace(cadena, Chr(13), " ")
cadena = cadena + Chr(13)

ts.Write cadena
Next FILA
ts.Close
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder