|
|
|
Приветик, помогите разобраца з цыклом For Step
|
|||
|---|---|---|---|
|
#18+
Нужно чтобы в цыкле было переывание For i = 1 To 30 Workbooks("Прихид").Worksheets("01").Cells(5, i + 2).Value = Workbooks("01.xls").Worksheets("01").Cells(i + 3, 36).Value так чтобы когда доходило до i=10 перерывалось на 5 и тогада i=15, можна ли это зделоть с помощю Step (шага) . ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.11.2007, 18:30:16 |
|
||
|
Приветик, помогите разобраца з цыклом For Step
|
|||
|---|---|---|---|
|
#18+
Код: plaintext 1. 2. 3. 4. 5. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.11.2007, 19:01:55 |
|
||
|
Приветик, помогите разобраца з цыклом For Step
|
|||
|---|---|---|---|
|
#18+
Большое спасибо за помощь, но мне нужна еще маленькая подсказка, как все это зделать так чтобы переменая "i" которая в книге Workbooks("01.xls").Worksheets("01").Cells(i + 3, 36) не перерывалась в отличии от переменой Workbooks("Прихид").Worksheets("01").Cells(5, i + 2).Value. Вообщем нужно чтобы с одной книги считывались дание попорядке а в другую записывались в промежутке в несколька ячеек. Извините за мой корявый русский язык. Большое спасибо за помощь. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.11.2007, 11:31:12 |
|
||
|
Приветик, помогите разобраца з цыклом For Step
|
|||
|---|---|---|---|
|
#18+
Код: plaintext ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.11.2007, 12:02:21 |
|
||
|
Приветик, помогите разобраца з цыклом For Step
|
|||
|---|---|---|---|
|
#18+
Попробуйте мне некогда. не уверен - просто предположение, но вроде должно работать ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.11.2007, 12:03:32 |
|
||
|
Приветик, помогите разобраца з цыклом For Step
|
|||
|---|---|---|---|
|
#18+
Спабсибо но все жэ не работает, может у ковота есть свабодная минутка чтобы помочь мне, а то уже сил нет с этими макросами. Буду очень признательна. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.11.2007, 12:23:40 |
|
||
|
Приветик, помогите разобраца з цыклом For Step
|
|||
|---|---|---|---|
|
#18+
Такое впечатление, что нужно просто 30 ячеек скопировать с листа 1-го и на листе 2 выложить порциями по 10 со смещением вниз на 5 строк от предыдущего десятка. В общем, издевательство какое-то на форумчанами типа "цыкл" и "зделать". ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.11.2007, 13:07:12 |
|
||
|
Приветик, помогите разобраца з цыклом For Step
|
|||
|---|---|---|---|
|
#18+
Поробовал, минус перед скобочкой нужно поставить. Например Код: plaintext 1. 2. И по этому поводу вопрос к участникам форума: почему значение True в VBA эквивалентно -1 , а не 1 как в Экселе. Т.е. (1=1)*(2=2) даст 1 а (1=1)*(2=2)*(3=3) даст -1 Зачем так сделано и правильно ли я всё понял. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.11.2007, 13:15:00 |
|
||
|
Приветик, помогите разобраца з цыклом For Step
|
|||
|---|---|---|---|
|
#18+
Угу, видно это так. Если мы нажмём F1 на слове True в VBE, то нам написано The True keyword has a value equal to -1 а на False The False keyword has a value equal to 0 P.S. никогда не обращал на это внимание ) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.11.2007, 13:57:17 |
|
||
|
Приветик, помогите разобраца з цыклом For Step
|
|||
|---|---|---|---|
|
#18+
Pavel55P.S. никогда не обращал на это внимание )я замечал это раньше, но не вьехал почему разработчики языка сделали именно так ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.11.2007, 14:09:10 |
|
||
|
Приветик, помогите разобраца з цыклом For Step
|
|||
|---|---|---|---|
|
#18+
Было бы интересно выслушать мнение кого-нибуть из старых програмистов. Я сам вообще ни основ програмирования, ни основ математики не знаю, так вершков нахватался. Просто мне логичным кажется 1 , почему -1 не понятно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.11.2007, 15:51:56 |
|
||
|
Приветик, помогите разобраца з цыклом For Step
|
|||
|---|---|---|---|
|
#18+
Pita это имелось ввиду? Код: plaintext 1. 2. 3. вот тестовая процедура Код: plaintext 1. 2. 3. 4. i ; i с прерыванием 1 ; 1 2 ; 2 3 ; 3 4 ; 4 5 ; 5 6 ; 6 7 ; 7 8 ; 8 9 ; 9 10 ; 15 11 ; 16 12 ; 17 13 ; 18 14 ; 19 15 ; 20 16 ; 21 17 ; 22 18 ; 23 19 ; 24 20 ; 30 21 ; 31 22 ; 32 23 ; 33 24 ; 34 25 ; 35 26 ; 36 27 ; 37 28 ; 38 29 ; 39 30 ; 45 I Have Nine Lives You Have One Only THINK! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.11.2007, 17:08:08 |
|
||
|
Приветик, помогите разобраца з цыклом For Step
|
|||
|---|---|---|---|
|
#18+
DeggasadБыло бы интересно выслушать мнение кого-нибуть из старых програмистов. Я сам вообще ни основ програмирования, ни основ математики не знаю, так вершков нахватался. Просто мне логичным кажется 1 , почему -1 не понятно.Элементарно Ватсон. Но для понимания почему так, тебе прийдется кроме Бейсика выучить еще хотя бы Си и Ассемблер. А вообще, это все действительно элементарно. Логическое значение "ложь" обозначается нулем. Логическое значение "правда" это "не ложь". Чему равняется в бинарной математике "не ноль"? Открывай школьный учебник информатики, там обязательно есть табличка: А не А0110Вспомнил? А теперь думаем дальше. Куда мы можем записать значение логической переменной? Просто ноль и единичка это один бит. Но процессор не может адресовать один бит, минимально адресуется только байт. А в байте у нас 8 бит. Значит логическая ложь это байт со всеми восемью битами равняющимися нулю. Тогда правда - байт со всеми восемью битами равняющимися единичкам. Вспоминаем еще одну аксиому - для компьютера не существует типа переменных. Типы переменных появляются только намного позже в языках высокого уровня. А для компьютера существуют только адресуемые ячейки памяти. Любое значение, любая переменная, любой текст для компьютера это всего-лишь набор байтов, которые можно представить в виде цифр.... Значит, если мы попытаемся бейсиковскую логическую переменную представить в виде цифры, мы будем читать двоичное 00000000 (ложь) как десятичную цифру. И 11111111 (правда) как десятичную цифру. Ну а дальше совсем элементарно: двоичным 11111111 в восьмибитной машине обозначается -1. Потому что если от нуля отнять единичку, то получится 11111111 и флаг переноса. Флаг переноса игнорируем и получаем однобайтовый десятичный -1. В VBA арифетика на самом деле не восьми- а 32-х байтовая, но принципов это не меняет. В VBA ложь обозначается тридцатью-двумя нулевыми битами, правда - тридцатью-двумя единичными битами. Которые по правилам двоично-десятичной 32-х битной знаковой конвертации и превращаются в -1. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.11.2007, 18:05:30 |
|
||
|
Приветик, помогите разобраца з цыклом For Step
|
|||
|---|---|---|---|
|
#18+
Большое спасибо всем за помощь. Я очень всем благодарна. Спасибочки. !!!! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.11.2007, 18:44:32 |
|
||
|
Приветик, помогите разобраца з цыклом For Step
|
|||
|---|---|---|---|
|
#18+
2 White Owl Так и знал, что вы поможете, только можно уточнить почему тогда в Экселе даёт единицу, например следующие 2 выражения возвращают различную величину, первое 1, второе -1 Код: plaintext 1. Просто интересно знать где можно натолкнуться на ошибку, чтобы избежать этого. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.11.2007, 08:47:21 |
|
||
|
Приветик, помогите разобраца з цыклом For Step
|
|||
|---|---|---|---|
|
#18+
Deggasad 2 White Owl Так и знал, что вы поможете, только можно уточнить почему тогда в Экселе даёт единицу, например следующие 2 выражения возвращают различную величину, первое 1, второе -1 Код: plaintext 1. Просто интересно знать где можно натолкнуться на ошибку, чтобы избежать этого.Наоборот вообще-то. Первое считается в VBA по принципам Бейсика. И дает -1, потому что "правда" это -1, а -1 в кубе равняется -1. А второе дает единицу, потому что считается Экселем, а он самый умный и считает "правду" за положительную единицу. Замени умножение на сложение и увидишь. Та же самая формула в ячейке на листе тоже будет считать "правду" положительной единицей. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.11.2007, 17:52:15 |
|
||
|
|

start [/forum/topic.php?fid=61&msg=34951932&tid=2181860]: |
0ms |
get settings: |
8ms |
get forum list: |
11ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
43ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
42ms |
get tp. blocked users: |
1ms |
| others: | 193ms |
| total: | 314ms |

| 0 / 0 |
