Выбрать дату в календареВыбрать дату в календаре

Страницы: 1 2 3 4 5 6 След.
вечером, после трудного дня, можно же послушать качественную музыку?
 
Цитата
k61 написал:
Обычно, вечером после трудного дня
респект за гараж))) мощщя!
вечером, после трудного дня, можно же послушать качественную музыку?
 
Цитата
Olga H. написал:
какую "тройку" (модели) посоветуете:
если будете слушать Цеппелинов,- любая техника заиграет всеми красками бытия)
-особенно, если это 1975 год. аминь.
Изменено: Домкрат - 09.02.2021 16:59:37
вечером, после трудного дня, можно же послушать качественную музыку?
 
минутный ролик, не удоляйте)
вечером, после трудного дня, можно же послушать качественную музыку?
 
Цитата
БМВ написал:
прежде чем вкладываться в такую аппаратуру,
с 97 года, ещё их хотел. Тогда они были просто фокусами. И эта модель уже снята с производства. Скажем так: "ачх" и прочие матерные слова меня не интересуют :D.
Этим колонкам неважно какое ачх помещения, уха, и других частей тела: ОНИ ИГРАЮТ в любой ситуации)) , я бы мог взять Focus SE - самую последнюю версию. !НО! там дизайн уже не тот((... и вид тоже((... А тут одни грили серые просто наповал меня укладывают)), не говоря о дизайне корпуса. Как играют)? скажем так: первое впечатление было такое: не может быть! я просто был в шоке от басов, я всего ожидал, но они превзошли все мои ожидания)). У этих колонок есть своё ЛИЦО. А дизайн других просто ни о чём для меня,- что Canton у меня стоит за 80тыс, что топ какой нибудь в десять раз дороже,- дизайн такой же серый и невнятный... ни душе ни сердцу... а так... дверь в комнату открываешь, и тебя встречают две эти красавицы :* )))) аж бальзам на душу и слушать не надо)) :D  просто посмотришь и добре) :D
Цитата
БМВ написал:
А то АЧХ уха будет хуже
не будет хуже: там грудная клетка всё чувствует :D . Ещё сетевой плеер достойный замутить надо будет ,- там глядишь и "ачх" появится)))  
Изменено: Домкрат - 15.12.2020 12:36:14
вечером, после трудного дня, можно же послушать качественную музыку?
 
Цитата
vikttur написал:
Кресло нужно ближе подвигать )
мы не бояре.... и на табурете посижу :)  
вечером, после трудного дня, можно же послушать качественную музыку?
 
Цитата
БМВ написал:
а стыки на обоях отклеивающиеся глазам не мешают :-).
уже как мог подклеил намертво)), пока так,- сперва колоночки и макросы, всё остальное патом! 8)
Цитата
БМВ написал:
я правильно понимаю, то  между колонками может чуть более 2х метров
чуть меньше)
Цитата
БМВ написал:
А можно уточнить размер комнаты
24 метра квадратных.
Цитата
БМВ написал:
А что в реальности?
справа стоят ещё две активных колонки Canton, в чехлах по народным мотивам :D , их я слушаю в обычном порядке, тоже качают,- достойно))
Изменено: Домкрат - 15.12.2020 06:18:09
вечером, после трудного дня, можно же послушать качественную музыку?
 
Цитата
БМВ написал:
Тут чем формула/код короче и эффективнее ценится
тут я согласен на 100%.
Цитата
БМВ написал:
а не размер пи... щалок.
а здесь, категорически НЕТ!  
Цитата
Домкрат написал:
не знаю чем закончится
вот, чем закончилось Legacy Focus HD(140 высота в сантиметрах, 60 кг одна весит):

4 динамика по 30см создают достойную тягу без обмана, по низам, начиная от 18гц, ну, и глаз и ухи отдыхают глядучи/слухая на такую красоту))
всем добра) и реализованных пантов по жизни)))
ну, и потом провода убрал+чехлы пошил на колонки, ибо...)):
Изменено: Домкрат - 14.12.2020 21:41:14
Найти слово в столбце В и сделать замену текста.
 
Ігор Гончаренко, спасибо, братан)!  
Изменено: Домкрат - 10.12.2020 19:37:06
Найти слово в столбце В и сделать замену текста.
 
Ігор Гончаренко, да, теперь работает! спасибо! А сможете чтобы пропускал ячейки со словом "НЕ ИГРИСТОЕ"?  Я вручную стал менять и на такое дело наткнулся...
Найти слово в столбце В и сделать замену текста.
 
Цитата
vikttur написал:
а почитать код и решить, где что менять?
читаю, пытаюсь менять,- результат тот же(
Найти слово в столбце В и сделать замену текста.
 
у вас всё равно констатна меняет слово "игристое" на "ИГРИСТОЕ ВИНО", в итоге текст такой получается:
1-ИГРИСТОЕ ВИНО ВИНОГРАДНОЕ, НАТУРАЛЬНОЕ, ВЫСОКОКАЧЕСТВЕННОЕ, РОЗОВОЕ, ИГРИСТОЕ ВИНО, ШАМПАНСКОЕ, КАТЕГОРИЯ AOC,
нужна ОДНА замена. Слово "игристое" нужно только для поиска. А меняем совсем другое.
Найти слово в столбце В и сделать замену текста.
 
Ігор Гончаренко, Я в файле сделал лист с названием "как должно быть" и выделил красным нужное.
там не должно вообще меняться само слово "игристое", оно остаётся как есть, в начале предложения нужно добавить слова  "1-ИГРИСТОЕ ВИНО,".
т..е на выходе в предложении должно быть два слова игристое:
"1-ИГРИСТОЕ ВИНО, ВИНОГРАДНОЕ, НАТУРАЛЬНОЕ, ОРДИНАРНОЕ, ИГРИСТОЕ, РОЗОВОЕ, СЛАДКОЕ, КАТЕГОРИЯ DOCG,"
по вашему методу получается так:
"1-ВИНО ВИНОГРАДНОЕ, НАТУРАЛЬНОЕ, ОРДИНАРНОЕ, ИГРИСТОЕ ВИНО, РОЗОВОЕ, СЛАДКОЕ, КАТЕГОРИЯ DOCG,".
в тз я указал что нужно менять: "затем в найденной ячейке производит замену текста: "1-ВИНО" меняет его на "1-ИГРИСТОЕ ВИНО,".

цитата: "искать игристое - это мое хобби",- о доме надо думать.
Изменено: Домкрат - 10.12.2020 17:28:58
Найти слово в столбце В и сделать замену текста.
 
Суть такова: макрос ищет в столбце "В" слово "игристое", затем в найденной ячейке производит замену текста: "1-ВИНО" меняет его на "1-ИГРИСТОЕ ВИНО,".
Я сделал макрос на основе других, но по всей таблице не получается,- все замены происходят в первой найденной ячейке, как пройти дальше - не ведаю(.
Пример таблицы с кодом прилагаю. Выручайте, muchachos!  
Передача данных переменной из одной процедуры в другую, В первом макросе переменная myTMes нормально возвращает значение. А дальше ничего..
 
Цитата
Юрий М написал:
А Ваш скрин вообще ни о чём.
Юрий М, я решил использовать именно так: Public МояПеременная, далее в коде, ищем места: МояПеременная = myTMest.Offset(0, 3).Value, и если пусто, то подставляем в другом модуле вот так:
Код
If tbl.Range("J" & r) = 0 Then
            tbl.Range("J" & r) = МояПеременная
заработало. ОДИН В ОДИН зделано как на цитата:". А Ваш скрин вообще ни о чём", только имя переменной поменял на Ваше.

Возвращает теперь как надо, остальное в понедельник уже добью, Спасибо Юрий!
Передача данных переменной из одной процедуры в другую, В первом макросе переменная myTMes нормально возвращает значение. А дальше ничего..
 
Юрий М, ну , сделал по вашим мотивам:
Передача данных переменной из одной процедуры в другую, В первом макросе переменная myTMes нормально возвращает значение. А дальше ничего..
 
Цитата
Ігор Гончаренко написал:
ИмяМодуляВКоторомОбьявленаПеременная.МояПеременная
так: AA_Nad_ModuleSformi_A_Shok.myTMes = myTMest.Offset(0, 3).Value
?
Изменено: Домкрат - 06.11.2020 15:01:09
Передача данных переменной из одной процедуры в другую, В первом макросе переменная myTMes нормально возвращает значение. А дальше ничего..
 
Цитата
Андрей VG написал:
В приложенном файле нет такой переменной
хорошо, а как правильно нужно объявить тогда?
Передача данных переменной из одной процедуры в другую, В первом макросе переменная myTMes нормально возвращает значение. А дальше ничего..
 
передать значение переменной из одного модуля в другой.

Цитата
Ігор Гончаренко написал: пока не обьясните что хотите сделать
макрос обрабатывает несколько файлов, в одном из них может не хватать нескольких столбцов, из-за этого кол-во мест нужно брать из строки под таблицей.
В одном макросе я записываю это количество мест. Далее, мне нужно его запомнить, и когда при окончательной обработке обнаружится, что в столбце J пусто, то в итоговою строку подставить значение из переменной, из первого макроса. Само суммирование будет делать другой макрос.

Цитата
Ігор Гончаренко написал: пока ничья 1:1
Вы это о чём сейчас??? Любите футбол?
Передача данных переменной из одной процедуры в другую, В первом макросе переменная myTMes нормально возвращает значение. А дальше ничего..
 
Цитата
V написал:
Файл секретный?
нет, не секретный, проста надстройка весит 5 бм.
я вытащил два модуля в файл которые нужны сейчас. вот он.
Передача данных переменной из одной процедуры в другую, В первом макросе переменная myTMes нормально возвращает значение. А дальше ничего..
 
Цитата
Ігор Гончаренко написал:
сможете обьяснить простыми словами
пременная обнуляется при попытке передать данные в другую процедуру.
Передача данных переменной из одной процедуры в другую, В первом макросе переменная myTMes нормально возвращает значение. А дальше ничего..
 
Юрий М,  написал перед процедурой: Public myTMes As Range
тогда вот эту строку красит жёлтым:
myTMes = myTMest.Offset(0, 3).Value - объект типо не установлен
Изменено: Домкрат - 06.11.2020 14:07:26
Передача данных переменной из одной процедуры в другую, В первом макросе переменная myTMes нормально возвращает значение. А дальше ничего..
 
вопрос был не про ф8, вообщето. Если , конечно, уважаемый V читал  название темы.

Цитата
Юрий М написал: Попробуйте использовать глобальную переменную.
где именно? я уже везде, где только можно объявил. Одно могу сказать: при переходе в следующий модуль все данные обнуляются.
Передача данных переменной из одной процедуры в другую, В первом макросе переменная myTMes нормально возвращает значение. А дальше ничего..
 
Цитата
V написал:
Пошаговый проход по коду (F8
я второй день жму на F8. В первой процедуре всё нормально: переменная возващает как  в самом макросе, так и в шапке нужные значения

а вот в следующей процедуре эта переменная пустая,

Спасибо за ценный совет по нажатию на ф8.
Изменено: Домкрат - 06.11.2020 13:40:52
Передача данных переменной из одной процедуры в другую, В первом макросе переменная myTMes нормально возвращает значение. А дальше ничего..
 
Код
Вот, сам код как выглядит, подчеркнуты места, где находится переменная.




Option Compare Text
 Dim myTMes    ---ВОТ ЗДЕСЬ, ВНАЧАЛЕ Я ОБЪЯВИЛ ТЕМУ, КАК ОСИЛИЛ В ИНЕТЕ ,
=========================================================================

'В этом модуле происходит определение первой ячейки(вид инвойса) с кодом тнвед(макрос);
' все виды товаров здесь есть.Отсюда начинаем искать уже определенный вид товара и объяединять инвойсы по етоим признакам
'на каждый вид будет свой модуль, чтоби не путаться.

Sub ВидИнвойса(control As Office.IRibbonControl)
 Dim spec As Variant
'  ' проверяем на наличие тестеров:
' Set spec = ActiveSheet.Cells.Find(what:="Тестеры", LookAt:=xlPart, MatchCase:=False)
'    If Not spec Is Nothing Then
'    Application.ScreenUpdating = False
'    AA_Nad_ModuleSformi_A_Testera.LoopFilesTestera
'    End If
    Call ВидИнвойс
End Sub
  Sub ВидИнвойс()
    Dim KodVd As Variant
    
    Dim sh_res As Worksheet
    Dim Nachalo As Integer, lngKonec As Integer
    Dim myF As Range
    Dim myF2 As Range ' это для игрушек, у них нет столбца с ящиками
    Dim spec As Variant
    Set sh_res = ActiveSheet
    
      ' Откл. монитора.
   Application.ScreenUpdating = False
    ' отслеживаем столбец с названием, если не в столбце D, то добовляем-скрываем один столбец:
    Set myF = sh_res.Columns("D").Find("Код ТН ВЭД", , , xlPart)
    If myF Is Nothing Then
       sh_res.Columns("C").Insert
       sh_res.Columns("C").Hidden = True
    End If
    

    
'Cells(Columns(4).Find("Код ТН ВЭД").row + 2, Columns(4).Find("Код ТН ВЭД").Column).Select
'определяем первую ячейку с кодом тнвед:
' если на листе встречается слово тетсрры, то ето тестеры))):
           Set spec = ActiveSheet.Cells.Find(what:="Тестеры", LookAt:=xlPart, MatchCase:=False)
           If Not spec Is Nothing Then
           AA_Nad_ModuleSformi_A_Testera.LoopFilesTestera
           End If

KodVd = Cells(Columns(4).Find("Код ТН ВЭД*").row + 2, Columns(4).Find("Код ТН ВЭД*").Column).Value
Select Case KodVd
 ' 1)Алкоголь(вообще с воды начанием):
 Case 2202100000# To 2208909900#
 'MsgBox "это пойло!"
 ' ищем алкогольные инвойсы:
 Call AA_Nad_ModuleSformi_A_Alko.LoopFilesAlko
' 2)Сигареты:+ Стики:
Case 2402209000#
'MsgBox "это сигареты!"
AA_Nad_ModuleSformi_A_Sigi.LoopFilesSigi
' 2а)+ Стики:
Case 2403999009#
'MsgBox "это стики!"

AA_Nad_ModuleSformi_A_Stiki.LoopFilesStiki

' 3)Шоколадки (под шоколадками подразумеваются разные товары, а не только шоколад):
Case "0701100000" To "2106108000", 9500000000# To 9503999999#

' для игрушек смотрим столбци, если не хватает, то добовляем:
Set myF2 = sh_res.Columns("H").Find("кол-во", , , xlPart)
    If myF2 Is Nothing Then
       sh_res.Columns("F").Insert
       sh_res.Columns("F").ColumnWidth = 9.29
      ' sh_res.Columns("F").Hidden = True
       sh_res.Columns("F").Insert
       sh_res.Columns("F").ColumnWidth = 9.29
     '  sh_res.Columns("F").Hidden = True
   
     'заполняем названия столбцов:
    Nachalo = НачалоДанных
    lngKonec = КонецДанных

    With Range(Cells(Nachalo - 2, "F"), Cells(Nachalo - 2, "F"))
       .Borders.LineStyle = xlContinuous
       .Borders.Weight = xlMedium
       '.Interior.Color = 14994616
       .Value = "кол-во" & Chr(10) & "в коробке"
    End With
    With Range(Cells(Nachalo - 2, "G"), Cells(Nachalo - 2, "G"))
       .Borders.LineStyle = xlContinuous
       .Borders.Weight = xlMedium
       '.Interior.Color = 14994616
       .Value = "кол-во коробок"
    End With
    mesta
     End If
'MsgBox "это шоколадки!"
AA_Nad_ModuleSformi_A_Shok.LoopFilesShok
' 4)Парфюм(вполть до мыла):
Case 3302909000# To 3408900000#
'MsgBox "это порфюм!"
AA_Nad_ModuleSformi_A_Parff.LoopFilesParff
'5) Бижутерия:(от сумочек до прочих, маникюрный комлект=8214200000; зонт=6601910000; очки = 90 04 101000 to 90 04 909000
' зеркала=7009920000# ; кольца-кулоны=7117900000+ часи двух видов!
Case 4202210000# To 4205009000#, 8214200000#, 6601910000#, 9004101000# To 9004909000#, 7009920000#, 7117900000#
AA_Nad_ModuleSformi_A_Bijj.LoopFilesBijj
'6)ЧАСЫ(ОНИ КАК БИЖУТЕРИЯ ТОКЛЬКО ОТДЕЛЬНО ДЯДЯ НАДОБЛЯ):
Case 9102110000#, 9102120000#
AA_Nad_ModuleSformi_A_Watches.LoopFilesWatches
' 7)СИГАРЫ(ОНИ КАК БИЖУТЕРИЯ ТОКЛЬКО ОТДЕЛЬНО ДЯДЯ НАДОБЛЯ):
 Case 2402100000#
 AA_Nad_ModuleSformi_A_Sigari.LoopFilesSigari
Case Else
 MsgBox "я не знаю, чё ет за код такой(!"
End Select
End Sub
'запоминаем количество мест в переменную myTMest :
Sub mesta()
Dim myFMest As Range
Dim myTMest As Range
Dim shFrom As Worksheet, thisB As Workbook
Set shFrom = ActiveSheet
Set thisB = ActiveWorkbook
Dim shTo As Worksheet
Dim wbTo As Workbook
Dim Wb As Workbook
Dim myF As Range
Dim stype As String

Set myTMest = Cells.Find("Кол-во мест", , , xlPart)
  myTMes = myTMest.Offset(0, 3).Value    ================== ВОТ ЭТА ПЕРЕМЕННАЯ, В ЭТОМ МОДУЛЕ ВСЁ НОРМАЛЬНО
============================================================================================================

 ' End If
  End Sub
ВОТ СЛЕДУЮЩАЯ ПРОЦЕДУРА, КУДА НУЖНЫ ДАННЫЕ ИЗ ПЕРЕМЕННОЙ ЭТОЙ:


Option Explicit
Dim myTMes - Я ЗДЕСЬ ТОЖЕ В НАЧАЛЕ ОБЪЯВИЛ, НО НИФИГА ЧЁТА((
==================================================================

' Вкладка "Шоколадки" - группа "Шоколадки" - "Сумма".
' Макрос работает с активным листом.
' Макрос обрабатывает лист после макроса "Сортировка".

' Вставка формул под каждым товаром.

'Sub Main(myControl As Office.IRibbonControl)- откзаываемся от кнопки
    Sub ChockSumm()
    Dim shAct As Excel.Worksheet, tbl As Excel.Range
    Dim arrB() As Variant, cn As New Collection
    Dim lngHRow As Long, lngLRow As Long
    Dim i As Long, r As Long
    Dim k As Long
    Dim Nachalo As Integer, lngKonec As Integer
    Dim rCell As Range, spec As Variant, specF As Variant
     ' Поиск первой и последней строки.
    Nachalo = НачалоДанных
    lngKonec = КонецДанных
    
    '1. VBA-наименование активного листаи присвоение имени
    Set shAct = ActiveSheet
    If shAct Is Nothing Then
        Exit Sub
    End If
    
    '2. Отключение монитора.
   ' Application.ScreenUpdating = False
    
    '3. Поиск шапки и низа таблицы.
    Call S_Hr.Function2(shAct, lngHRow, lngLRow)
    
    '4. Vba-именование таблицы.
        ' В таблицу включается строка, которая находится под таблицей.
    Set tbl = shAct.Rows(lngHRow & ":" & lngLRow + 1)
    
    '5.
    ' Копирование столбца B в массив "arrB".
    ' Подготовка данных к сравнению.
    arrB() = tbl.Columns("B").Value
    For i = 2 To UBound(arrB, 1) Step 1
        arrB(i, 1) = CStr(arrB(i, 1))
    Next i
    
    '6. Запись номеров пустых строк в коллекцию.
        ' Во вторую строку формула не вставляется, но эта строка нужна
        ' для составления формулы под первым товаром.
    For i = 2 To UBound(arrB, 1) Step 1
        If arrB(i, 1) = "" Then
            cn.Add Item:=i
        End If
    Next i
    
    '7. Вставка формул.
    
    ' В коллекции находятся два вида пустых строк:
        '1) строки-заголовки групп;
        '2) строки, которые находятся под товарами.
    ' В коллекции первая пустая строка - это строка-заголовок. В неё не надо вставлять формулы.
    For i = 2 To cn.count Step 1
    
        ' Запись порядкового номера эксель-строки в переменную для удобства.
        r = cn(i)
        
        ' Пустые строки-заголовки пропускаем.
            ' Они определяются по двум подрядстоящим пустым строкам.
        If arrB(r - 1, 1) <> "" Then
      Stop
            ' Вставка формул.
            tbl.Range("J" & r).Resize(1, 2).FormulaR1C1 = "=SUM(R[-" & r - cn(i - 1) - 1 & "]C:R[-1]C)"
            If tbl.Range("J" & r) = 0 Then
            tbl.Range("J" & r) = myTMes - ПУСТО, ВООБЩЕ НИЧЕГО НЕ ПЕРЕДАЁТ СЮДА
            ============================ =========================================
            End If
поиск в видимых ячейках\строках, сейчас макрос возвращает данные в скрытых строках, - они не нужны.
 
zav, спасибо, большое!
Цитата
zav написал:
Непонятно, для чего Вам Select
тестировал, что выделяет, больше нигде не используется)
поиск в видимых ячейках\строках, сейчас макрос возвращает данные в скрытых строках, - они не нужны.
 
Ищется часть слова от "контракта":
Код
contract = Cells.Find("*контра*").Offset(0, 1).Select
как сделать поиск только по видимому диапазону листа? спасибо.
Активировать лист рабочей книги из списка, из трёх вариантов
 
DANIKOLA, спасибо!
Активировать лист рабочей книги из списка, из трёх вариантов
 
А можно сделать сразу список, типо: spisok = Array("Апсны", "Флагман", "разбивки")... и если из списка найден лист- активировать его: .spisok.Select, сейчас использую вот такую конструкцию:
Код
Sub Tеек()
Dim sh As Worksheet

  For Each sh In ThisWorkbook.Worksheets      
        If LCase(sh.Name) Like "апсны" Then
        sh.Select
        End If
        If LCase(sh.Name) Like "флагман" Then
        sh.Select
        End If
        If LCase(sh.Name) Like "разбивки" Then
        sh.Select
        End If 
Next
End Sub
хотелось бы укоротить как-то код... есть мысли какие-то? спасибо. Названия листов будут только в одном экземпляре из списка.
Почему переменные с одинаковыми значениями не видят друг друга?, и выполнение кода пропускает их одинаковые значения, может из-за кавычек, возвращаемых одной из переменных?
 
Цитата
vikttur написал:
Val("1") = 1 (для целых чисел)
всё, конечная версия выглядит так:
Код
a = Val(CStr(tbl.Cells(lngRowIndex - 1, "D").Value))
теперь красиво прям! vikttur - респект!
Почему переменные с одинаковыми значениями не видят друг друга?, и выполнение кода пропускает их одинаковые значения, может из-за кавычек, возвращаемых одной из переменных?
 
Цитата
sokol92 написал:
Решаем без доски Excel
не..для меня слишком много букв! вот, что ексель животворящий делает!
Код
Debug.Print s = d, s = v2, v1 = d, v1 = v2
            True    True    True    False
   
Страницы: 1 2 3 4 5 6 След.
Наверх