1) microsoft query, как правильно суммировать по группам. как самостоятельно изменить тему не знаю. 2) попробовала изменить сообщение и вставить код тегом, не получилось, не появляется панель инструментов.
Объединила две таблички по соответствующим полям, отобрала нужные записи по условиям, сгруппировала, теперь необходимо просуммировать по группам и оствить в табличке едниственную итоговую запись по каждой группе. вот мой запрос, который НЕ работает:
SELECT INVENTORY_PART.DESCRIPTION, INVENTORY_PART.PART_NO, INVENTORY_PART.WEIGHT_NET, Sum(INVENTORY_PART_IN_STOCK.QTY_ONHAND) AS 'Sum of QTY_ONHAND', INVENTORY_PART.ASSET_CLASS FROM PGAPP.INVENTORY_PART INVENTORY_PART, PGAPP.INVENTORY_PART_IN_STOCK INVENTORY_PART_IN_STOCK WHERE INVENTORY_PART_IN_STOCK.PART_NO = INVENTORY_PART.PART_NO AND INVENTORY_PART.CONTRACT = INVENTORY_PART_IN_STOCK.CONTRACT GROUP BY INVENTORY_PART.DESCRIPTION, INVENTORY_PART.PART_NO, INVENTORY_PART.WEIGHT_NET, INVENTORY_PART.ASSET_CLASS, INVENTORY_PART_IN_STOCK.QTY_ONHAND, INVENTORY_PART_IN_STOCK.CONTRACT HAVING (INVENTORY_PART.PART_NO Like '8%') AND (INVENTORY_PART_IN_STOCK.QTY_ONHAND>0) AND (INVENTORY_PART_IN_STOCK.CONTRACT='IZ') ORDER BY INVENTORY_PART.DESCRIPTION DESC
Не работает суммирование: Sum(INVENTORY_PART_IN_STOCK.QTY_ONHAND) AS 'Sum of QTY_ONHAND'
Появляется ошибка:
ORA-00923: FROM keyword not found where expected.
Не могу понять в чем дело, с точки зрения sql запрос вроде бы верный. help please)))создавать сводную табличку на основе полученной не хотелось бы .
{quote}{login=Hugo}{date=22.08.2011 10:48}{thema=}{post}А имена книг? :){/post}{/quote} поменяла название листа прайс на прайс.xls, все заработало!!! Спасибо!!!!
окончательный код имеет следующий вид: Private Sub CommandButton1_Click() Dim n1 As Long, n2 As Long, i As Long, j As Long n1 = Workbooks("прайс").Worksheets("2").Cells(Workbooks("прайс").Worksheets("2").Rows.Count, 1).End(xlUp).Row MsgBox (Str(n1)) With Workbooks("прайс") n1 = .Worksheets("2").Cells(Workbooks("прайс").Worksheets("2").Rows.Count, 1).End(xlUp).Row n2 = .Worksheets("3").Cells(Workbooks("прайс").Worksheets("3").Rows.Count, 1).End(xlUp).Row For i = n1 To 1 Step -1 For j = n2 To 1 Step -1 If Not .Worksheets("2").Cells(i, 1) Like "*[А-я]*" Then If Not .Worksheets("2").Cells(i, 1) Like "*[A-z]*" Then If .Worksheets("2").Cells(i, 1) = .Worksheets("3").Cells(j, 1) Then .Worksheets("2").Cells(i, 1).EntireRow.Delete .Worksheets("3").Cells(j, 1).EntireRow.Delete End If End If End If Next j Next i End With End Sub
{quote}{login=Hugo}{date=22.08.2011 09:42}{thema=}{post}Для какой программы? Такая ошибка говорит о том, что вышли за пределы массива.{/post}{/quote} для этого же кода (объявленного в начале темы), но на другом компе))
подскажите, пожалуйста, в чем ошибка)код вроде верный ,но на моем компе появляется такая ошибка:run-time error '9' subscript out of range, для данной программы)
{quote}{login=Hugo}{date=15.08.2011 03:50}{thema=}{post}Потому что удалять строки/столбцы нужно снизу/справа вверх/налево :) Удалённое сдвигает оставшееся. Ну а код можно написать оптимальнее...{/post}{/quote}
спасибо!!!если не сложно, подскажите,пожалуйста, как тогда правильно удалить строки? оптимальнее написать код пока не позволяет небольшой опыт работы в vba)
необходимо из двух прайс листов удалить строки с одинаковыми кодами, написала следующий код: Private Sub CommandButton1_Click() Dim n1 As Long, n2 As Long, i As Long, j As Long, k As Long k = 0 With Workbooks("прайс") n1 = .Worksheets("2").Cells(Workbooks("прайс").Worksheets("2").Rows.Count, 1).End(xlUp).Row n2 = .Worksheets("3").Cells(Workbooks("прайс").Worksheets("3").Rows.Count, 1).End(xlUp).Row MsgBox ("n1 =" + Str(n1)) MsgBox ("n2 =" + Str(n2)) For i = 1 To n1 For j = 1 To n2 If Not .Worksheets("2").Cells(i, 1) Like "*[А-я]*" Then If Not .Worksheets("2").Cells(i, 1) Like "*[A-z]*" Then If .Worksheets("2").Cells(i, 1) = .Worksheets("3").Cells(j, 1) Then .Worksheets("2").Cells(i, 1).EntireRow.Delete .Worksheets("3").Cells(j, 1).EntireRow.Delete End If End If End If Next j Next i End With End Sub
не могу понять почему приходится прогонять программу несколько раз чтобы удалить все строки с одинаковыми кодами,подскажите ,пожалуйста, в чем ошибка)
{quote}{login=Казанский}{date=11.08.2011 11:03}{thema=}{post}Cells(..., 1) 1 - номер столбца, в котором Вы находите последнюю заполненную ячейку. Попробуйте Cells(..., 4) или Cells(..., "D"){/post}{/quote}
результат почему-то n2=1, подскажите почему так происходит и как сделать, чтобы результат был верным? может есть другой способ для определения количества непустых строк в листе?
Заранее огромное спасибо! Прилагаю часть того листа, в котором надо определить количество непустых строк
{quote}{login=Z}{date=08.07.2011 01:38}{thema=Re: }{post}{quote}{login=dinaria}{date=08.07.2011 01:05}{thema=}{post}на моем диске файл 773кб занимает)присвоила значения переменным){/post}{/quote} Dinaria! Насколько же надо НЕ уважать форумчан и не желать получить помощь, отправляя неоднократно (!) файлы такой величины! Хотя бы разок загляните в Правила и усвойте - см.скрин. зф Ничего (совершенно)личного... -73838-{/post}{/quote} искренне прошу прощение) форумчан безмерно уважаю! больше так не буду!
есть код, который удаляет одинаковые строки из двух листов, надо получившиеся листы сохранить в разные эксель файлы с одним листом, подскажите как это сделать, ПОЖАААЛуйста))))!!! Private Sub CommandButton1_Click() Dim n1 As Long, n2 As Long, i As Long, j As Long With Workbooks("1") For i = 1 To n1 For j = 1 To n2 If Not .Worksheets("2").Cells(i, 1) Like "*[А-я]*" Then If Not .Worksheets("2").Cells(i, 1) Like "*[A-z]*" Then If .Worksheets("2").Cells(i, 1) = .Worksheets("3").Cells(j, 1) Then .Worksheets("2").Cells(i, 1).EntireRow.Delete .Worksheets("3").Cells(j, 1).EntireRow.Delete End If End If End If Next j Next i //здесь нужно сохранить лист 2 в один файл и лист 3 в др файл //но так он ругается, не пойму почему) .Worksheets("2").SaveAs Filename = "C:\папка\2.xls", FileFormat = xls .Worksheets("3").SaveAs Filename = "C:\папка\3.xls", FileFormat = xls
хочу установить commondialog но выдает такое сообщение : the control could not be created because it s not properly licensed))) подскажите , пожалуйста ,что делать???
ДОброе утро!!!Так хочется программу до ума довести))хочу сделать так чтобы понявлялось окошко для выбора пути открытия файла и налалогично для сохранеия сформированного файла))Подскажите как это можно сделать))
сделала как вы посоветовали : .UsedRange.EntireColumn.AutoFit
а с сохранением в файл вот как дела обстоят: в переменную S я сохраняю нужное название города, затем следуют следующие строчки fso.CreateFolder "D:\База платильщиков\" & S 'создаю папку с названием города sFileName = "D:\База платильщиков\" & S & ".dbf" (здесь нужо сохранить в созданную папку файл c названием ab_trg и расширением dbf)
а получается так: создаются папки с именем города и аналогичные файлы dbf
с колонками я определилась, просто нахожу максимальную длину записи во всех ячейках во всем столбце и присваиваю эту длину всему столбцу)))
еще вопрос: как сделать, чтобы окончательную папку сохранения файла можно было менять, так как я создаю папки с названиями городов и в них сохраняю вновь созданный файл всегда с однинаковым названием
sFileName = "D:\База платильщиков\НАЗВАНИЕ ГОРОДА ДОЛЖНО МЕНЯТЬСЯ" & ab_trg & ".dbf"
подскажите пожалуйста как определить максимальную длину ячейки, а затем присвоить это значение всему столбцу перед сохранением всего файла)))и как сохранить файл в формате DBF)))все для этой же программы
подскажите пожалуйста как определить максимальную длину ячейки, а затем присвоить это значение всему столбцу перед сохранением всего файла)))и как сохранить файл в формате dpf)))все для этой же программы
подскажите пожалуйста как определить максимальную длину ячейки, а затем присвоить это значение всему столбцу перед сохранением всего файла)))и как сохранить файл в формате dpf)))все для этой же программы
прога почему то сохраняет в HTML файл только те записи у которых название города состоит из двух слов, например, Кесова Гора, Западная Двина) Что можно с этим сделать?
Спасибо огромное, благодаря Вам узнала много нового и нужного)программа работает)но почему-то после формирования последнего файла сохраняет его в HTML формате?