HOLA KL como reconocer valores nulos

22/09/2005 - 00:10 por Hanna | Informe spam
Hola de nuevo voy a tratar de explicarme
tengo las variables wb y shtprofit lascuales hacen referencia al libro y a
la hoja del libro respectivamente,tengo 2 libros diferentes la variable
strrevenue es la que asigne para que encuentre el valor de revenue en la
hoja1 y lo imprima en la hoja2
fecha es una variable que asigne ya que en la hoja1 vienen los datos del
revenue que es el que quiero obtener por mes es decir de enero a octubre del
2005 (variable ind) aqui utilizo un ciclo for para que me busque el dato de
revenue para cada mes,i es una variable que incrementa el valor de las filas
al insertar los datos de la hoja 1 a la 2. rangefil y rangecol son variables
que utilizo para asignar las filas y columnas donde encuentre el dato que
busco por que la columna revenue de la hoja1 no siempre esta en la misma
posicion por lo tanto es desconocida su posicion por eso use estas variables
para hacer referencia a estas,rangefil2 lo que hace es asignar el valor de la
columna revenue usd que encuentra en la hoja1 y r es la variable que hace
referencia a la columna revenue de la hoja2 por que desde ahi va a empezar a
posicionar o imprimir los valores que encuentre en la hoja1.
Ahora lo que quiero es que si la celda x de la hoja1 esta vacia en la hoja 2
NO me la deje vacia tambien si no que ponga un cero o un comentario de valor
nulo o algo asi.
espero haber sido mas clara agradecere su pronta respuesta de antemano
gracias :-)

Public Sub createProfitability(file As String)
Dim wb As Workbook
Dim shtProfit As Worksheet
Dim strRevenue As String
Dim fecha As String
Dim i As Integer
Dim numRows As Integer
Dim r As Range
Dim rangeRow As Integer
Dim f1 As Range
Dim rangeFil As Integer
Dim f2 As Range
Dim rangeFil2 As Integer
Dim r1 As Range
Dim rangeCol As Integer
Dim ind As Integer
Dim FechaArr(10) As String

FechaArr(1) = "1/1/2005"
FechaArr(2) = "2/1/2005"
FechaArr(3) = "3/1/2005"
FechaArr(4) = "4/1/2005"
FechaArr(5) = "5/1/2005"
FechaArr(6) = "6/1/2005"
FechaArr(7) = "7/1/2005"
FechaArr(8) = "8/1/2005"
FechaArr(9) = "9/1/2005"
FechaArr(10) = "10/1/2005"

i = 0

strRevenue = ""
fecha = ""


Workbooks.Open file, False, True
Set wb = Workbooks(strOpenFileSelected)
Set shtProfit = wb.Sheets("source")

For ind = 1 To 10
On Error Resume Next

Set f1 = shtProfit.Cells.Find(FechaArr(ind), _
After:=ActiveCell, _
LookIn:=xlFormulas, _
LookAt:=xlWhole, _
SearchOrder:=xlByRows, _
SearchDirection:=xlNext, _
MatchCase:=False)
rangeFil = f1.Row


If f1.Value = Null Then
Exit For
End If


Set f2= shtProfit.Cells.Find("Revenue USD", _
After:=ActiveCell, _
LookIn:=xlFormulas, _
LookAt:=xlWhole, _
SearchOrder:=xlByRows, _
SearchDirection:=xlNext, _
MatchCase:=False)
RangeFil2 = f2.Row



Set r1 = shtProfit.Cells.Find(FechaArr(ind), _
After:=ActiveCell, _
LookIn:=xlFormulas, _
LookAt:=xlWhole, _
SearchOrder:=xlByRows, _
SearchDirection:=xlNext, _
MatchCase:=False)
rangeCol = r1.Column


fecha = shtProfit.Cells(rangeFil15, rangeCol).Value
strRevenue = shtProfit.Cells(rangeFil7, rangeCol).Value

Set r = SheetSummary.Cells.Find("revenue", _
After:=ActiveCell, _
LookIn:=xlFormulas, _
LookAt:=xlWhole, _
SearchOrder:=xlByRows, _
SearchDirection:=xlNext, _
MatchCase:=False)

SheetSummary.Activate

i = 2

Rows((r.Row + i) & ":" & (r.Row + i)).Select

Selection.Insert Shift:=xlDown

numRows = numOfRows(SheetSummary, r.Row)

SheetSummary.Cells(r.Row + i, 2).Value = fecha
SheetSummary.Cells(r.Row + i, 7).Value = strRevenue


Next
Workbooks(strOpenFileSelected).Close SaveChanges:=False

End Sub

Preguntas similare

Leer las respuestas

#1 KL
22/09/2005 - 08:54 | Informe spam
Hola Hanna,

Entiendo que te corre prisa, pero no te olvides que podemos estar en franjas
horarias distintas (las 9:00 de la manana en Barcelona) :-) Revisa mi
respuesta en el hilo original.

Saludos,
KL


"Hanna" wrote in message
news:
Hola de nuevo voy a tratar de explicarme
tengo las variables wb y shtprofit lascuales hacen referencia al libro y a
la hoja del libro respectivamente,tengo 2 libros diferentes la variable
strrevenue es la que asigne para que encuentre el valor de revenue en la
hoja1 y lo imprima en la hoja2
fecha es una variable que asigne ya que en la hoja1 vienen los datos del
revenue que es el que quiero obtener por mes es decir de enero a octubre
del
2005 (variable ind) aqui utilizo un ciclo for para que me busque el dato
de
revenue para cada mes,i es una variable que incrementa el valor de las
filas
al insertar los datos de la hoja 1 a la 2. rangefil y rangecol son
variables
que utilizo para asignar las filas y columnas donde encuentre el dato que
busco por que la columna revenue de la hoja1 no siempre esta en la misma
posicion por lo tanto es desconocida su posicion por eso use estas
variables
para hacer referencia a estas,rangefil2 lo que hace es asignar el valor de
la
columna revenue usd que encuentra en la hoja1 y r es la variable que hace
referencia a la columna revenue de la hoja2 por que desde ahi va a empezar
a
posicionar o imprimir los valores que encuentre en la hoja1.
Ahora lo que quiero es que si la celda x de la hoja1 esta vacia en la hoja
2
NO me la deje vacia tambien si no que ponga un cero o un comentario de
valor
nulo o algo asi.
espero haber sido mas clara agradecere su pronta respuesta de antemano
gracias :-)

Public Sub createProfitability(file As String)
Dim wb As Workbook
Dim shtProfit As Worksheet
Dim strRevenue As String
Dim fecha As String
Dim i As Integer
Dim numRows As Integer
Dim r As Range
Dim rangeRow As Integer
Dim f1 As Range
Dim rangeFil As Integer
Dim f2 As Range
Dim rangeFil2 As Integer
Dim r1 As Range
Dim rangeCol As Integer
Dim ind As Integer
Dim FechaArr(10) As String

FechaArr(1) = "1/1/2005"
FechaArr(2) = "2/1/2005"
FechaArr(3) = "3/1/2005"
FechaArr(4) = "4/1/2005"
FechaArr(5) = "5/1/2005"
FechaArr(6) = "6/1/2005"
FechaArr(7) = "7/1/2005"
FechaArr(8) = "8/1/2005"
FechaArr(9) = "9/1/2005"
FechaArr(10) = "10/1/2005"

i = 0

strRevenue = ""
fecha = ""


Workbooks.Open file, False, True
Set wb = Workbooks(strOpenFileSelected)
Set shtProfit = wb.Sheets("source")

For ind = 1 To 10
On Error Resume Next

Set f1 = shtProfit.Cells.Find(FechaArr(ind), _
After:=ActiveCell, _
LookIn:=xlFormulas, _
LookAt:=xlWhole, _
SearchOrder:=xlByRows, _
SearchDirection:=xlNext, _
MatchCase:=False)
rangeFil = f1.Row


If f1.Value = Null Then
Exit For
End If


Set f2= shtProfit.Cells.Find("Revenue USD", _
After:=ActiveCell, _
LookIn:=xlFormulas, _
LookAt:=xlWhole, _
SearchOrder:=xlByRows, _
SearchDirection:=xlNext, _
MatchCase:=False)
RangeFil2 = f2.Row



Set r1 = shtProfit.Cells.Find(FechaArr(ind), _
After:=ActiveCell, _
LookIn:=xlFormulas, _
LookAt:=xlWhole, _
SearchOrder:=xlByRows, _
SearchDirection:=xlNext, _
MatchCase:=False)
rangeCol = r1.Column


fecha = shtProfit.Cells(rangeFil15, rangeCol).Value
strRevenue = shtProfit.Cells(rangeFil7, rangeCol).Value

Set r = SheetSummary.Cells.Find("revenue", _
After:=ActiveCell, _
LookIn:=xlFormulas, _
LookAt:=xlWhole, _
SearchOrder:=xlByRows, _
SearchDirection:=xlNext, _
MatchCase:=False)

SheetSummary.Activate

i = 2

Rows((r.Row + i) & ":" & (r.Row + i)).Select

Selection.Insert Shift:=xlDown

numRows = numOfRows(SheetSummary, r.Row)

SheetSummary.Cells(r.Row + i, 2).Value = fecha
SheetSummary.Cells(r.Row + i, 7).Value = strRevenue


Next
Workbooks(strOpenFileSelected).Close SaveChanges:=False

End Sub

email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida