Smog
Жираф-Сибиряк | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору visual73 проблему понял, попробую vasiliy74 а в чем проблема? Код: Sub qw() n = 7 Cells(n, 1) = "дата" Cells(n, 2) = "ко-во " Cells(n, 3) = "наименование" n = n + 1 For stroka = 2 To 5 For stolbec = 2 To 5 If Cells(stroka, stolbec) <> 0 Then Cells(n, 1) = Cells(stroka, 1) Cells(n, 2) = Cells(stroka, stolbec) Cells(n, 3) = Cells(1, stolbec) Cells(n, 1).NumberFormat = "m/d/yyyy" n = n + 1 End If Next stolbec Next stroka End Sub | Только вместа цикла for лучше while с проверкой на непустую ячейку. Ну и переменные сами объявите И Cells родителя указать Добавлено: visual73 Код: Function ApplySchemeColor(SchemeColor As XlThemeColor, TintAndShade As Double) As String Dim LightnessOrDarkness As String If TintAndShade >= 0 Then LightnessOrDarkness = "FF" & Right$("0" & Hex$((1 - TintAndShade) * &HFF), 2) Else LightnessOrDarkness = Right$("0" & Hex$((1 + TintAndShade) * &HFF), 2) & "FF" End If ApplySchemeColor = "&H" & "D" & Hex$(SchemeColor) & "00" & LightnessOrDarkness End Function Private Sub CommandButton2_Click() a = ApplySchemeColor(xlThemeColorAccent1, 3) b = Right(a, 2) g = Left(Right(a, 4), 2) r = Left(Right(a, 6), 2) With Selection .Interior.Color = a End With dd = ConvertDec(r & g & b) CommandButton2.BackColor = dd Cells(1, 1).Interior.Color = dd End Sub Function ConvertDec(heximal) As Long 'объявим две переменные 'одну для шестнадцатеричной цифры числа Dim Simvol As String 'вторую для соответствующей ему десятичной цифры Dim DesChislo As Long 'а так же переменную для цикла Dim x As Long 'обнулим ConvertDec = 0 'переберем все цифры шестнадцатеричного числа 'и каждой поставим в соотвествие десятичную For x = 1 To Len(heximal) Simvol = Mid(heximal, x, 1) If UCase(Simvol) = "A" Then DesChislo = 10 ElseIf UCase(Simvol) = "B" Then DesChislo = 11 ElseIf UCase(Simvol) = "C" Then DesChislo = 12 ElseIf UCase(Simvol) = "D" Then DesChislo = 13 ElseIf UCase(Simvol) = "E" Then DesChislo = 14 ElseIf UCase(Simvol) = "F" Then DesChislo = 15 Else DesChislo = Val(Simvol) End If 'накапливаем в нашей функции результат ConvertDec = ConvertDec + DesChislo * 16 ^ (Len(heximal) - x) Next x End Function | ?
| Всего записей: 5394 | Зарегистр. 20-06-2003 | Отправлено: 15:06 10-01-2008 | Исправлено: Smog, 15:55 10-01-2008 |
|