opa pessoal blz , eu to querendo usar o listview no seguinte tenho um Form onde tenho Data_Aluguel (texto) onde ponho todo dia de pagamento de tal aluguel tipo todo dia 12, Data_Entrada (texto) onde ponho a data em que a pessoa entrou na casa tipo 12/05/05 ,Data_Saida(Texto) e aki eu ponho a data que ele vaisa ir da casa 12/05/06 e tipo fazer uma mensagem pra avisar quando esta proximo de tal data de pagamento de aluguel xegar pra pagamento , so que no meu listview esta dano erro de expected array eu ponho o botao no menu assim
no general
Dim cnBd As ADODB.Connection
Dim rs As ADODB.Recordset
Dim sSQL As String
Dim sMSG As String
no load
Dim iDia_rs As Integer
Dim iMes_rs As Integer
Dim iAno_rs As Integer
Dim iDia As Integer
Dim iMes As Integer
Dim iAno As Integer
Dim iAux1 As Integer
Dim iAux2 As Integer
Dim iDiasDeAvisoComAntecedencia As Integer
iDiasDeAvisoComAntecedencia = 2
Set cnBd = New ADODB.Connection
cnBd.Open "Provider = Microsoft.jet.OLEDB.4.0; Data Source = " & App.Path & "Bdimobiliaria.MDB"
Set rs = New ADODB.Recordset
rs.CursorLocation = adUseClient
sSQL = "SELECT * FROM Tbl_Apartamentos WHERE Data_Entrada <> ''"
rs.Open sSQL, cnBd, adOpenDynamic, adLockOptimistic
iDia = Day(Date)
iMes = Month(Date)
iAno = Right(Str(Year(Date)), 2)
While Not rs.EOF
iAux1 = InStr(1, rs("Data_Saida"), "/")
iAux2 = InStr(iAux1 + 1, rs("Data_Saida"), "/")
iMes_rs = Val(Mid(rs("Data_Saida"), iAux1 + 1, iAux2 - iAux1))
iAno_rs = Val(Mid(rs("Data_Saida"), iAux2 + 1, Len(rs("Data_Saida")) - iAux2))
If iMes <= iMes_rs And iAno <= iAno_rs Then
iAux1 = InStr(1, rs("Data_Entrada"), "/")
iAux2 = InStr(iAux1 + 1, rs("Data_Entrada"), "/")
iDia_rs = Val(rs("Data_Aluguel")) - iDiasDeAvisoComAntecedencia
iMes_rs = Val(Mid(rs("Data_Entrada"), iAux1 + 1, iAux2 - iAux1)) + Val(rs("Parcela"))
iAno_rs = Val(Mid(rs("Data_Entrada"), iAux2 + 1, Len(rs("Data_Entrada")) - iAux2))
While iMes_rs > 12
iMes_rs = iMes_rs - 12
iAno_rs = iAno_rs + 1
Wend
If iDia_rs < 1 Then
Select Case iMes_rs
Case 1, 3, 5, 7, 8, 10, 12
iDia_rs = 31 - IIf(iMes_rs < 0, (iMes_rs * (-1)), iMes_rs)
Case 2
If (iAno_rs / 4 = 0) Or (iAno_rs / 4 = Int(iAno_rs / 4)) Then
iDia_rs = 29 - IIf(iMes_rs < 0, (iMes_rs * (-1)), iMes_rs)
Else
iDia_rs = 28 - IIf(iMes_rs < 0, (iMes_rs * (-1)), iMes_rs)
End If
Case 4, 6, 9, 11
iDia_rs = 30 - IIf(iMes_rs < 0, (iMes_rs * (-1)), iMes_rs)
End Select
End If
If iMes_rs = iMes And iAno_rs = iAno And iDia_rs = iDia Then
sMSG = "Cobrar o Aluguel deste Apartamento:" & vbCrLf & vbCrLf
For iCount = 0 To rs.Fields.Count - 1
sMSG = sMSG & rs.Fields(iCount).Name & ": " & rs(iCount) & vbCrLf
Next iCount
MsgBox sMSG, vbExclamation, "||| Atenção |||"
End If
End If
rs.MoveNext
Wend
End
esta dano esse erro de expected array justo aki No "Right"
iAno = Right(Str(Year(Date)), 2)
se alguem poder me ajuadr agradeço pessoal obrigado desde ja